(scroll down past the warning urging you not to use this method)
Actually Signal (and 95% of the Android app ecosystem) works almost perfectly with microg in place of Google Play Services. Using microg to use Signal does require that you allow Signal to connect to Google's "cloud messaging" push notification infrastructure, but in addition to Signal not actually sending any content through this infrastructure (as mentioned by the sibling poster), it apparently replaces all the data that is normally hoovered up by Google Play Services and attached to the requests sent using that infrastructure, so that you are sending almost nothing. I should emphasize I'm just regurgitating the claims made by microg developers, and I haven't done any research into the truthiness of these claims. But I will say that microg is hyper-focused on privacy (perhaps obviously), and this is an important issue to the entire userbase, and these kinds of things can't be done inadvertently or by default. The microg backend is extremely explicit with plenty of warnings indicating what it's doing and when and most importantly, giving you an opportunity to cancel the action after you've initiated it, but prior to it being executed.
Why is that a deal breaker for you? AFAIK, Signal only uses GCM to send notifications to wake the app. No data is sent over GCM. What messaging platform you use to avoid GCM?
I don't have Google play services installed on my phone, and don't want to install it anytime soon.