I did a debugging session right now regarding problem #2 in the original post. I had the same problem that certain sub_fields in flexible_content fields not showed up.
I found out, that this is a problem with naming fields in PHP code – when registering fields via PHP we sometime gave fields the same key AND name. That workted until 5.7.10, but in 5.7.12 the concept of “stores” is used and the local store uses an alias function to allow searching for fields via key AND name – but this is messed up when key and name are the same somehow – at least for sub_fields in a fc layout. I don’t know why or how it’s messed up exactly – but will try to find out.
Nevertheless I see no way of fixing this except for renaming and migrating our field names/keys. Will probably do that – that’s gonna be ugly.