Might not always be true but in tests I've done on my company's sites the http2 load is always faster with no CDN, even from far away locations.
The golden age of CDN's is over. Their primary advantage was being able to open up many parallel connections using multiple subdomains and the ability to cache across domains.
With http2 multiple connections have become a bad thing and https is mandatory so CDN caching is irrelevant.
On http2 and a tiny AWS instance I can get sub 200ms page loads from anywhere in the US if I host in the midwest. The gain from avoiding multiple HTTP connections, TCP slow starts, and TLS negotiations negates all the speed advantages of using a CDN. Cloudflare might be worthwhile if you get massive traffic but a small Nginx instance can handle hundreds of megabytes per second of traffic.
That being said, for less mission-critical projects, they do have their place.
CDNs involve a big set of tradeoff choices you have to make, they don't make sense for every circumstance. I don't think I'd ever throw in "Use CDNs as much as possible" into an optimization advice list.
CDNs are one of those cases where the cloud vastly outperforms whatever kind of server you have.