It's odd ICANN has such a control to effect an countries income just by choosing a good abbreviation. I doubt the creators of the DNS system had any idea that domains would arbitrarily give some countries an extra form of income, profiting from people who could care less about the country it was created for. Why didn't ICANN just charge a flat fee for any string to resolve to an IP?
Opening up registration for non-citizens / non-residents is an option each country has. Some restrict registration more than others.
https://en.m.wikipedia.org/wiki/List_of_Internet_top-level_d...
There's also an important angle that countries can set the terms of service for their ccTLD to match their laws. It's one way to ensure a country has some legislative and enforcement ability over their corner of the web.