Sorry to insist again, but, from my point of view, it looks like 3cx is the only PBX which operates this way. Even, If you say its mandantory and hardcoded, it does not make any sense for the caller/called. Other pbx also prove it is possible to handle this issue different.
So, this is a Bug built into 3cx which is not fixable, and we have to live whith it. Correct?
Or a more positive way: Do you have an explanation which I can present to my customer why this is handled the way it is, which might not make him happy but one which he might understand?