If you want to implement your own push notifications, you need some kind of persistent connection to your server. Before Oreo, this was simply possible with a background service.
But starting from Oreo, your background services are shut down after 2 or 3 minutes, as soon as the corresponding app is no longer in the foreground. Of course, you could try to use a foreground service (which must display a notification). But even then the user gets a constant warning displayed like "App xyz is running in the background" or "App xyz is using battery".
Many users are not developers. If they get such a warning, they think something is wrong with your app. This is just not a good user experience. You are virtually forced to use FCM. And that doesn't work without a Google account.
"App xyz is running in the background" or "App xyz is using battery" aren't normally shown when you foreground Notification is properly constructed. If you correctly set icon, text, notification channel and other properties, the notification bar should have only your notification and nothing else. At least it have always worked that way on devices I own.
I have to agree, it is a monopoly within the context of iOS devices. Apple works fairly hard to patch iOS in order to prevent the latest jailbreaks, thus removing a major avenue where a user would have the freedom to sideload the apps of their choosing.
In Google's case, while I don't think the Play Store is a monopoly, it is clearly a dominant player on many Android devices around the world.
For example, Microsoft never once had monopoly on operating systems...
If it's really so easy to ship an alternative store on Android and Play Store isn't an artificial monopoly why are there no successful alternative stores? Is it because Google's is really the best possible store and thus a healthy, functioning market produces no competition?
Are people really choosing to be stuck giving Google 30% of all sales and recurring revenue because Play Store is that good? They wouldn't rather use one of these other stores to save 30%?