Cool write up! I think I explored most of those things a little bit almost immediate, because I’ve worked on knowledge-management type projects before, so have the concepts in mind.
This seems like a software limitation more than a conceptual choice. See e.g. Separate page title from file name - the title::
property should change the displayed name and not the namespace/filename. (personally I’d also love it if the / namespacing used subdirectories on disk, but oh well)
I think a better argument for using page-tags (or better general page-properties) is that it allows for multiple hierarchies, which can be extremely useful. For example: apple could be fruit/apple, but it could also be ingredient/apple - both are referring to the same type of thing, but in different context/taxonomies.
Of course, there’s not much build-in functionality for using page tags like this (unlike the namespace hierarchy feature), but you can do a lot with queries. Some discussion of multiple-hierarchy tools over here too: Generate explicit hierarchy out of properties