If not middleware, what is the correct architectural term for it?
GCM website: https://developers.google.com/cloud-messaging/
Yes. By definition:
Middleware is a computer software that provides services to software applications beyond those available from the operating system. It acts as a bridge between an operating system or database and applications, especially on a network.
For this instance, GCM acts like a bridge between servers and client apps (Android/iOS OS). So to me, it's safe to call it a middleware.