I think this is a good example of where direct data entry into the block editor shouldn't be used and highlights a key stumbling block of all page builders which less experienced users often fall into.

What if I had say 300 recipes all individually laid out, using in this instance a pattern, and I wanted to insert a new field, tweak the layout and add a button, maybe even add some sorting on the archive page as the library grows? If the data is stored in a structured format using something like custom fields it'd be easy, I could even conditionally change the layouts depending on if the new field was populated or not.

Using a pattern/page builder? Huge job. I know because I literally had to do just this for a client. It took 3 days to transpose the data alone. A poor initial decision cost the client a significant sum.