I don’t think there is really a “right” or “wrong” way of doing anything. There may be ways that are better suited to a need than others though.
Here are some questions I would be asking.
Will there ever be a need, or could there ever be a need, to have more than one of these layouts?
Another would be is it important for the user to be able to set the order that the layouts are displayed in or are they fixed?
If the answer to those are both no then I might use tabs and the first tab in each field would be a true/false field to have the section active or not. The rest of the fields would be hidden when not active (conditional fields). This eliminates the loops of the flex fields. If then need to be able to set the order they the sections are displayed in this could possibly be done with a radio button offering various orders.
Welcome to the Advanced Custom Fields community forum.
Browse through ideas, snippets of code, questions and answers between fellow ACF users
Helping others is a great way to earn karma, gain badges and help ACF development!