Maybe the problem is the tight coupling.
An app store is really many things. It's client software for installing apps, it's a service for verifying apps, it's a hosting service for apps, it's a payment processor.
If you want to replace any piece of it you currently have to replace the whole thing, and do so all at once. Even if you create a good alternative app store, it has few apps in it, which matters if it's a separate client/interface than the main one. And you have to replicate every piece of it well for it to be any good.
So what's needed is better modularity. You don't have an "Amazon app store app", you just have a "software installer" app that shows all apps from enabled providers and then lists individual apps as "verified by Google", "verified by Amazon", etc. in the same software. When you buy one you get a list of enabled payment processors and choose "pay with Google" or "pay with Paypal" or "pay with Visa" etc. (the list being all the ones that the app developer accepts).
Then you can put your app in Google Play and let them do everything, or you can host it yourself and pay a verification service that charges a one time fee rather than a percentage and accept five different payment services but only the ones that charge less than a 5% commission, and either way it's not a significantly different experience for the user.
And whether or not Google would join in on something like that, at least Amazon/Samsung/F-Droid could do it with each other (and anyone else who shows up).