Do they require you to go above the Business tier for high CDN traffic levels?
> The Service is offered primarily as a platform to cache and serve web pages and websites. Unless explicitly included as a part of a Paid Service purchased by you, you agree to use the Service solely for the purpose of serving web pages as viewed through a web browser or other application and the Hypertext Markup Language (HTML) protocol or other equivalent technology. Use of the Service for the storage or caching of video (unless purchased separately as a Paid Service) or a disproportionate percentage of pictures, audio files, or other non-HTML content, is prohibited.
This limitation does not exist on the Enterprise plan, and Cloudflare salespeople are likely to make that point when selling the upgrade.
It used to be SECTION 10: LIMITATION ON NON-HTML CACHING.  Then with the May 25, 2018 update to the terms  they removed that limitation. It has a section 2.7 Acceptable Use but no 2.8. Then they announced their Bandwidth Alliance on September 26, 2018  offering some interesting free bandwidth options, including with places like backblaze which are primarily for storing non-html content. At the time of the announcement it seemed pretty mind blowing, especially because the non-html limitation had been removed previously. However it looks like they later updated their terms again on October 26, 2018  to put back the limitation as section 2.8 Limitation on Non-HTML Caching.
Quite unfortunate. I was actually looking forward to using the bandwidth alliance benefit to access my B2 buckets, however looks like it's against the rules again.
This was the first email: https://www.celsoazevedo.com/files/2019/01.png
I then replied that I couldn't afford an Enterprise plan and that I understood about the costs of serving 80TB. I was offered a $3000 plan: https://www.celsoazevedo.com/files/2019/02.png
I explained that 3k was too expensive for me, but I would be fine with something up to $500 even if that meant less POPs/features. Or I could leave Cloudflare too. The price dropped to $1500: https://www.celsoazevedo.com/files/2019/03.png
I asked for a few days so I could move some heavy files (under the 512MB limit) to a ~$120 OVH server and reduced CF's usage to under 2TB/month.
Again, I'm not complaining. I still use CF's service (last month I used over 150TB with Backblaze B2), but it's true that some users receive emails telling them to upgrade and that sometimes these emails imply that the site will be kicked out if nothing is done.
Now when you say that you still use Cloudflare & also that you used over 150TB with B2 last month, do you mean through Cloudflare thanks to their Bandwidth Alliance? If so, is this with a regular $200 Business plan or something more expensive? I've been wondering how much of this Bandwidth Alliance traffic would truly be free like they're advertising until they want me to start paying by the GB.
What am I hosting?
There's modified Google Camera app that unlocks Google's HDR+ on non-Google phones. It's an amateur thing for people that like to thinker with their Android phone. People were having issues downloading the files so I started hosting them (https://www.celsoazevedo.com/files/android/google-camera/). I also host other stuff which is used by people that install custom ROMs. Eventually all this got popular and now my personal domain uses this massive amount of bandwidth. Here's the weird thing: this domain is on a "pro" plan ($20) and they haven't said a thing (yet?).
This is not a business or a service. I have Adsense, but sometimes it's not enough to pay all expenses, so if an upgrade to an enterprise plan was required, I would be forced to close down the site or (with community support) move all this to one or two dedicated servers (you can get at least two 1Gbps servers on Hetzner or OVH for less than what the Business plan costs).
I really mean it when I say that I'm happy with Cloudflare. Without them this little hobby wouldn't exist. I only showed the email because jgrahamc asked for it and because it's not the first time I see someone mentioning "forced" upgrades.
Now, while "unlimited" is nice for what I do and for when you get popular overnight, not having a limit creates some insecurity. 80TB wasn't okay before, but 150TB is okay now? Was the email sent because CF was proxying/caching .jpg and .mp4 files? If so, do .zip and .apk files have different limits? We don't know if we have crossed the line if we don't know where the line is.
If Cloudflare does what you need, go for it. If you want a plan b, look into dedicated servers, after all not all content needs a CDN.
I tried to edit my original comment, but the "edit" button is gone: the email was sent almost 2 years ago. At the time they also claimed to have unlimited traffic, but I received that email anyway. Maybe something changed between then and now?
Yeah my original plan was to use B2 as storage and build my own caching system on Hetzner dedicated machines, as you suggested. Excess traffic was very reasonably priced at Hetzner at 1€ per TB. Since October 4, 2018 they've made traffic completely free.  However it's the B2 traffic pricing that was bugging me, as they charge $10 per TB.
When the Bandwidth Alliance got announced between Cloudflare & B2 to make B2 traffic free, it was like a dream come true. Especially because at the time this was announced the Cloudflare terms allowed for caching all legal files.
Unfortunately on October 26, 2018 Cloudflare changed their terms again to prohibit non-html caching. 
Thanks to your comments here and also jgrahamc saying that forcing to upgrade shouldn't happen anymore, I'm now a bit more optimistic again about using Cloudflare. I need to research & think some more to decide the exact plan, but even something like using Cloudflare to tunnel data from B2 to Hetzner for free sounds pretty nice.
 Use of the Service for the storage or caching of video (unless purchased separately as a Paid Service) or a disproportionate percentage of pictures, audio files, or other non-HTML content, is prohibited. https://www.cloudflare.com/terms/
The reason for the email was the bandwidth I was using. Since I could only spend up to $500/month, I asked if they had any plan inside my budget. I was open to have less features, less POPs or POPs only in cheaper places (eg: US or EU). If not, and since I couldn't afford the $3000 plan, I would have to leave the service and move everything to a new server (I was using a VPS, was in a place with bad internet, and asked for a few days to migrate everything).
The 3rd screenshot shows their reply to this:
> At the moment we offer the plans that are listed on our website and the Business Plus plan, which I cannot offer for less than $1500. If this is not an option for you please let me know when you have moved your traffic to a new server.
English is not my native language, so I might be missing something here. I understood it as "it's either the $1500 plan or leave the service".
As I said, traffic costs money and I don't really expect unlimited bandwidth. I'm also aware that it using something like Cloudfront would cost more than $1500.
I only replied to jgrahamc because he asked for the example and because it's not first time that I see CF people saying bandwidth is not a reason to force an upgrade. Since Matthew (CEO) and and jgrahamc (CTO) keep saying that bandwidth is not an issue, I assume that they don't know about these emails.
As of October 2018, Hetzner is the best choice in such scenario:
"Hetzner Online has permanently removed the traffic limitation for all Dedicated Root and Managed Servers with 1G Uplink. This means that outgoing traffic is now unlimited and free of charge. Therefore, we will no longer throttle the connection if you have higher levels of traffic.
In the past, if you permanently wanted to exceed the traffic limit on your server, you could pay an extra fee for each additional terabyte of traffic you used. But now this is not necessary. We will no longer invoice you for using more traffic."
You told them "If you have nothing cheaper, I'm going to have to leave" and they replied with "We have nothing cheaper. Let us know when you leave". That's not a threat, that's calling you out on >your< threat.
When I noticed that they had plans not available on their website, I asked if they had anything up to $500 and if not, if they could give me a few days to migrate everything to a server that could handle the traffic.
I was simply explaining my position, but I guess their sales representative could have perceived it a "threat". That wasn't my intention though. Also, I should have asked "what happens if I don't upgrade?".
Anyway, all this saved me some money and allowed me to learn a lot.