I hope your app development is going well! As you mentioned in your post, our suggestion would be to use flow layouts to hold the smaller images within the main flow layout - essentially creating a composite of flow layouts. As you correctly identified in your post, this could work, as long as your use case meets the following conditions:
Given those conditions, you could put your smaller images into a separate flow layout, then add that as an item in the main flow layout. This would allow you to do the tighter packing you're after.
The main constraint on this approach is that you need to know the maximum height of the items in each row before you pack smaller items into the row. That is one of the reasons why editing wouldn't work - moving a large item from one row to another could potentially change the maximum height of each row. It is also why you would need to determine the layout of your images before adding them to the flow layout control.
The other issue with dragging items around is that you would potentially need to be able to drag an item from the main flow layout to a position inside one of the inner flow layouts. The flow layout doesn't currently support that kind of operation. Items can be dragged between different flow layouts, but not from one to another which is inside it.
I hope this post has been of some help, let me know how things go.