I have an alternative proposal specified here: Ethereum 2.0 Data Model: Actors and Assets
I have thought of a somewhat similar model myself, where a contract can store objects with a user account, with that user’s permission, which the user would then need to pay rent for. I do increasingly agree that it has advantages; the main one I see is that if a user account does get hibernated, reviving it and all of its associated assets requires only a single set of Merkle branches.
This seems like a promising direction.