The question of implementing some form of multiple data objects per physical file has been discused many times in the Linux kernel list. But it has always gotten hung up on three issues, two of which you point out below.

The other issue is that it's not Unixy. The core kernel developers are followers of the idea that a file is a stream of binary data, nothing more. Thus both general file attributes and multiple data streams have gotten some resistance on general principle.

Jay