IP addresses were always meant to be globally reachable. Of course, NAT has corrupted this - which is why NAT is a scourge.
And so are firewalls?
firewalls are a choice that the enduser makes.
non-routed prefixes are a limitation imposed by the ISP the the user can't address.