You can try setting the SKU fields to Slide up and Resize Enclosing part. If you do, the layout objects below and alongside these fields also need to be set to slide and resize.
I'd also suggest putting those SKU's in a related table and using a portal to list them on this layout. The portal can be set to slide up so that it is only as tall as their are records listed in the portal.
And you may still need a few different layouts to handle the other variations you have here. If you do, the user should not have to be the one to decide which layout to use. They should only need to click a button or something to start up a script and the script can select the appropriate layout for them.
The yellow box in my screenshot above is a container field, which holds an image when one is available. If the container is empty, should I be able to slide it up also? That doesn't seem to be working. Could it be because I have this conditional format on the container field?:
Ignore the question above; I found the answer. Apparently, the container field must be set with a "Top" alignment in order to slide.
All fields, not just containers, need top alignment to slide up and left alignment to slide left. But with container fields, you have select these options under data formatting on the data tab where you use different controls on the appearance tab for all other field types.