For the benefit of others reading this thread, we got to the bottom of it. The DNS provider had not set the sub-domains to the same IP address as the main FusionPBX server, despite them saying they had.
The dig command proved very useful in diagnosing the issue:
https://linux.die.net/man/1/dig