Good one for an idea. You would have my vote. But that is no solution for now.
Andrej’ suggestion is a good one: Put them in a separate entity.
Other option is to set editability via the write-option in the access rules. But that is a general setting so only useful if those fields are always having the same editable-status. I doubt that this is useful for your challenge.
The easiest way is to add two containers setting the visibility according to opposing expressions and one container having each element set editable to ‘yes’ and the other container having each element set editable to ‘no’
How about creating two containers: one with the attributes editable and one with the attributes non-editable. Set the conditional visibility of the containers based on your requirements.