@LouisFD:
I am just wondering if anyone has ever experienced anything like this before or if there is any configuration settings we may be able to try.
If you can find out what voip system they are using that might help you track down the problem.
EG in freeswitch an opensource voip system which can do landlines as well, like Asterisk, you tend to have the name associated with the extension DID, eg:
<variable name="effective_caller_id_name" value="Mike or Sales"><variable name="effective_caller_id_number" value="1001">https://wiki.freeswitch.org/wiki/XML_User_Directory_Guide#Alphanumeric_to_numeric_user_mapping
But you can have DID/extensions associated with call groups, hunt groups and so on.
Until you can find out just how they are associating names to an extension, there could be any number of possibilities in play.
For example, do you have your workstations plugged into the phones to minimise cabling and do you run vpn's for file sharing between offices?
Have you switched on logging in various rules in pfsense to following the traffic in the fw logs?
If you get nowhere with then, trying swapping out pfsense for a basic ISP supplied router (if you have any) and see how things work then for a short period of time once the problems show up. If it persists its easier to point the finger back to the VOIP host.</variable></variable>