And it works because there is capacity where it is needed, and the network is deterministic with authoritative lookup services. Even if everyone had 100/100mbit and we use a mesh network with a relatively efficient topology, with say random walkers to find ressources, it will wouldn't scale well enough.
A mesh network with an incentive system could provide incentive for building out infrastructure where it's needed, without our existing oligopolies over the last mile. In other words - if you were to pay each of the nodes your packets pass through, you'd have competition where absolutely anyone could hook into the network at any point and provide the necessary bandwidth and get paid for it, no permission necessary.
The point is that your last mile can be a proper meshnet, and the backbone operates in real-time competition, and people wanting to compete on parts of the backbone are much more able to - and people wanting to compete in the last mile are able to as well. You could have someone pull fiber from the backbone to somewhere vaguely near you, and depend on the meshnet from there, or you could travel a few kilometers over meshnet hops, or some combination of the two depending on whether a packet relates to something user-interactive. It solves a problem - monopolies in Internet transport - it just doesn't handwave away basic understandings of physics.
'mesh network' popped up here exactly because we want to avoid the fat links in that mesh.
And getting substantial data (including transit) routed through a heap of wifi devices in a city isn't easy. To the next city - hard. Over the big pond - well...
Mesh doesn't need to be limited to Wifi. The only reason purely radio-based mesh networks are difficult is interference. With enough intermediate wired links interacting with the network (i.e. 3 or 4 Wifi hotspots route to an entire apartment high-rise), the problem is trivial, and hierarchies can be generated based on link capacity and topology just like with the Internet (BGP/RIP). This requires updating routing protocols and in some cases, infrastructure, so there's a lot of hysteresis against change (I know; I've tried).