(Where I work we recently went from a home-rolled feature flag system similar to what you described to using LaunchDarkly)
You could always build it all your self, but I guess you could build a lot of things your self...
I absolutely understand that you could just read somejson from a cdn and call it a day, but at some point someone is going to have to maintain it and become the defacto feature flag person lol
I think this enables non-engineers to define pricing rules and the associated features.
I wonder if this could integrate well with getlago.com (we're looking at integrating that after years which feel partially wasted on implementing custom billing logic)
We recently open sourced Tier http://github.com/tierrun/tier which combines metering, entitlements, feature flags and a client side SDK to simplify things.
That said, LD is an expensive daily pain in my ass, and anything better, or even a little worse but cheaper, than it catches my attention.
django-waffle is an example of your approach, and worked pretty well in a monolithic environment. But it also exposed multiple issues in coordination in a service oriented environment, which is one reason why O'Reilly went to LaunchDarkly around 2018.
What you suggested gets complex once you want to start making changes to your subscription plans. Let's say you want to experiment with different configurations. You'd then need to remember which customers were signed up with the "old" package configuration and each of the arms of your experiment, for example.