The thing is, it seems to me like a lot of sites that get a ton of traffic still use their free tier. There are no actual bandwidth limits at the free tier, just some missing features. They never require anyone to upgrade.
People upgrade to get better service (including the missing features) not because of some artificial limit (like bandwidth). If you upgrade because you want to, not because you have to, you're likely a better customer.
Personally I don't think bandwidth is an artificial limit, or that it's unreasonable to require an upgrade after a certain cap. A site with 100,000 daily visitors will be able to afford at least the business tier.
I believe the free tier has higher* response times.
Also as far as I know once you get to something like 100Tb a month they will ask you or require you to upgrade. But thats still ridiculously high, the same would cost $12k on AWS.
The higher tiers have hard guarantees on response times and level of support you'll get.
In my experience customers do a great job of self-segregating. If you offer "enterprise" as a tier, enterprises will generally pick it, even if the listed benefits are the same as another package. In exchange, they will expect enterprise services -- billing, guaranteed response, etc. No free lunch/get what you pay for.
The only corner case is when an important person at an enterprise customer has a personal account too, or when someone is really being a scrappy startup and trying to run something huge on a personal account due to not having the resources. Usually a good salesperson can handle both of those situations.
You answered your own question.
They're nearly an ISP at this point
Not really, CloudFlare doesn't have any 'last mile' to pay for.