At Hetzner, the bandwidth is unlimited in theory. In practice, there are stories of terminating accounts of those who used too much.
I don't think this project will ever make $2k per month. TBH, I'd be happy it it ever reaches $200 per month. I have to be very careful about what hosting providers to use and CDNs are out of the question.
I don't think it's still offered anywhere in the web interface, but Hetzner offers servers with 10Gbit uplink, with traffic charged at 1€/TB. Depending on resource usage this can be more cost effective than renting multiple servers, and paying for your traffic should prevent account termination for excessive traffic use.
If I were running fastly, I'd donate bandwidth so that you would implement turn-key, bring-your-api-key fastly support to your open source setup!
As for other cdns - I remember https://neocities.org/ built their own cdn - but I couldn't immediately find a blog post about the cdn, or something related in their GitHub (unless every node runs part of it, which would make sense, I guess).
Cloudflare Free is a good idea, but I'm afraid they'd be the one who limit me before. There is a comment in this thread who did 150 TB+ on Hetzner. I don't believe Cloudflare Free would allow 150 TB, not alone 300 TB in a month (I use two servers currently).
I don't think this project will ever make $2k per month. TBH, I'd be happy it it ever reaches $200 per month. I have to be very careful about what hosting providers to use and CDNs are out of the question.