How about this idea? Just separate front matter block from content.
_index.md - content file
_index.yaml - front matter file
It can add some flexibility and there will be no “spagetti” with yaml/json and markdown syntax in one big file. Meta will be meta-file, content will be content file, as it would be