Is there a way to get cloudflare to cache the site for folks who aren't logged in?
Yes you can on CF Business or Enterprise plans you get bypass cache on cookie page rule support https://blog.Cloudflare.com/caching-anonymous-page-views/ you can properly distinguish between logged in users versus guests so tell Cloudflare via bypass cache on cookie page rules to only cache for guests the dynamic/static generated html content and bypass cache for logged in users.
You can also do that via Cloudflare Worker custom coding to implement your own cookie inspection to bypass cache on cookie. You can use 2 methods to cache requests on CF Workers via fetch() or Cache API https://developers.cloudflare.com/workers/learning/how-the-cache-works.
I've been using both methods (bypass cache on cookie page rule and CF Worker fetch() based bypass cache on cookie) for Xenforo and Wordpress for past 2 years now
If Xenforo guest page caching could be extended, it could be more useful from suggestions I posted at https://xenforo.com/community/threa...e-caching-and-more.155203/page-4#post-1290848