I think its a vicious cycle - No one supports it so services don't implement it, and because no services implement it people use hacky ways to do what MQTTv5 does out of the box or use services they normally wouldn't because the ones they want only support MQTT 3.1.1.
We use NATS for pretty much all of our MQ / Service Bus type stuff, we were using GCP Iot, AWS IoT and recently moved to EMQX as it has native MQTTv5 support.
NATS would have been a much better choice for us but the support wasn't there.
Build it and they will come :)