some combination of invites and WoT is the only way I see short of imposing a direct cost
Discussion
Yes. Inviting someone to Nostr should come with some way to be notified if they accepted the invite, so you can immediately follow them, bootstrapping them into your web-of-trust. I believe nostr:nprofile1qqsd7ele5ljpzft5tjl84naae5pkj9uqcepa77adwr6ayyy0948uyqqh59wgx is working on something like that with https://nostrmeet.me/
Another thing clients could do is default to adding a certain amount of PoW to new users' notes, defining new users as those with no kind 10002 relay list, or no notes on their outbox relays with a timestamp older than X number of days. The exact number of days someone should be considered new is debatable and each client could use a different length of time. Then, clients could default to showing notes from npubs outside of the user's WoT that meet the minimum PoW. Coracle has the latter option, for instance, but no default PoW added to notes for new users.
The above could even be paired with a feature like Nostur has, where you have a few seconds to cancel a post before it is written to your relays. That way if you see a typo, you can cancel and fix it before it is permanently on display. During that few seconds, the client could be performing the required PoW.