I was thinking about this too, but there is one problem with a purely pay-it-forward type model - there is no 'debt'.
That is, how does one earn karma in order to buy uptime?
You can 'sell' your connection to someone else, but where do they get their karma from?
Part of the solution might be to provide 'seed' karma to new users, but then you inevitably will have users who don't spend the karma they gain and so become karma sinks.
This all assumes a zero sum economy, so perhaps a different model is a better idea. Keep track of metrics like how much bandwidth someone has shared or used (somehow), and then allow providers to define a measure for who can share their connection based on those metrics.
For example, one provider might let anyone connect no matter what, while someone else might only let people who have shared their own connection connect.
Determining what to share and to whom is a hard question, and when there are upstream costs to the provider the balance seems like it would be hard to find. The yourkarma model is more or less a loss-leading strategy (we pay you in bandwidth to sign up new users) and it's hard to see that being sustainable long term for the user. It's not completely obvious if the 100mb is for new karma users connecting, or for any connection, but based on their help page[1] it seems to be only new users:
Why do I get extra bandwidth when I share my connection?
Every time another person uses Karma, our company grows a little bigger. The more the merrier! So when you share your connection, you are essentially helping us and we feel like we should help you. After all, we’re not called Karma for nothing.
What I am really interested in are the ad-hoc networking projects [2], that will be able to route data by hopping between networked devices, reducing the need of centralised ISPs. Simply being part of that network adds value, however similar problems will probably arise in any case.
[1] https://yourkarma.com/help/82-why-do-i-get-extra-bandwidth-w...
[2] https://en.wikipedia.org/wiki/Wireless_ad_hoc_network