This is exactly how is has been working in the PC world, and is working quite well as far as I can tell.
"Look at these companies that offer an API without extensions by not even trying to support hardware with different features."
In D3D11, the "tier" is basically the minor version number (D3D11.1, .2, etc...), while in Metal you have this handy reference:
https://developer.apple.com/metal/Metal-Feature-Set-Tables.p...
Both solutions prevent the "combinatorial explosion" of OpenGL or Vulkan extensions.
But couldn't you do something very similar in Vulkan? I.e. essentially bucket your render-paths into a couple tiers by checking for a set of extensions required to support each one?
If you want to target PC, you have to deal with hardware fragmentation. You can pretend this is a Vulkan issue, but it's just a reality of the platform.