https://docs.ntfy.sh/subscribe/phone/#instant-delivery
The upstream approach you describe is only necessary for iOS devices that don't permit apps to do that.
But I really wish Android supported specifying additional servers to poll (and/or replace the default server), so you could use a self-hosted service in addition to or instead of Google's service.