Problem has been solved. In the end the issue had nothing to do with Mattermost at all. There was a proxy server sitting between the end user and the server that was not forwarding Secure WebSocket traffic properly.
I was able to verify that it was the proxy server (of which I have no control or access over) by doing a port forward via a SSH tunnel to the server. I wasn’t able to find any particular technical details, just validated that the pipe via the proxy was the issue.