I spent a good amount of time exploring the same thing some time ago. What I discovered is that resizing using the handle of the patcher window never gave consistent resize updates. So I instead used objects in the window as handles and automated changes in window size according to the mouse cursor x/y delta when click/dragging the handles. It's one solution, I think it could be done better. Maybe you could use something in here.