Answer about connection overhead: I always agreed that this was a problem, but I've always said the solution: Don't do it on clients that can't handle it. Point them at client-proxies that handle it for them. We need servers that act as clients on behalf of phones, since phones can't handle the overhead of managing 50-odd SSL connections that potentially close and open often. This is still fully decentralized, scales, doesn't require copying events to hundreds of relays where they don't need to be, etc. It still is the "gossip model" or "outbox model" using NIP-65. It's not the *only* architecture to address this, but it seems the most natural to me.
Discussion
Sorry that’s lame, trusting middle-men proxies is no different than trusting mega relays. Haha love you though for trying. We’ll figure out that raw outbox model on clients one-day!