Modern protocols do magic things with spectrum efficiency, but there's only so much you can do.
Running a small number of powerful radios on low-frequency spectrum is a cost-effective way to cover large areas. Physics constrains how much of that can happen in the same area. But if networks are willing spend cash, they can get a ton of capacity by densely deploying high-frequency radios. Don't think we're anywhere near hitting the walls on what's possible there.
Putting this another way, networks provide enough bandwidth for everyone in Manhattan. It's just expensive.
That's still not a lot of spectrum. And you need to share it with other consumers (WiFi).
Then you start getting into the practicalities. You'll need to spam EVERYTHING with your access points. Can you imagine dozens of different wireless providers installing access points on every floor of every building? It's just not going to happen.
The walls here are defined by physics. There's only so much spectrum to go around.
You can't have more than 3-4 large cell phone operators working in the same area. Decoupling the radio part and forcing everyone to play as MVNOs is a way to work around this.