Did you know that Cloudflare supports cache tagging? This is similar to surrogate keys in Varnish and Fastly. Super powerful for contextual cache invalidation. And it seems to be available for all plans.
See: https://developers.cloudflare.com/cache/how-to/purge-cache/purge-by-tags/