Hello @simon3 and welcome to the community!
As you said, as a general rule:
If you want the content to be constant across all instances of it, using record links is the way to go
If you want the content to be mutable across all instances of it, and have a constant schema, modular blocks is the way to go.
When it comes to mixing those two approaches to allow editors to move them around between them, having modular blocks with link fields inside of them is the way to go as you said as well
Soon we will be releasing a new Demo project that uses those concepts extensively, so you can get some schema inspirations from that once its out