This all sounds grand to me. I think you've captured my request accurately.
We don't have an iron in the XLSForm fire, but another option might be to introduce a new question "type" like metadata
and then have a new column called like "metadata::key" for specifying the key? You could then load both the existing metadata in that style or the new custom metadata ones.