CentOS just gave everything away for free and then is wondering why they're not making any money.
Without the absurdly high licensing fee. A more reasonable amount (be it a saas-like low monthly charge or one-off 3-digit fee) would probably go down fine with enough institutional users to generate a decent amount of money.
There is a some up/down depending on various rebates, volume licenses, support included/excluded, etc ("nobody pays sticker price"). But in general, RedHat is in the same order of magnitude as Windows but a little cheaper due to no per-core-pricing, no necessary CAL shenannigans or weird limitations on number of users/size of company/VM/PM and stuff.
But of course it's true that in domains like HPC or cloud computing, the huge number of licenses and machines involved make a few hundred bucks per year just too expensive in sum.
Whether or not it is a good plan in theory, it clearly doesn't seem to be working that well for them in practice.
The free RedHat tier should have a shorter support window that's still long enough to attract users who want a stable platform to build long-lived appliances.
In fact, Ubuntu does too much development for its own good. People jumped on it because it was “a usable Debian updated more often”, and they got all sorts of crazy UX experiments.