Found a possible solution. Replaced XPort (as much as I hate to) with VSPE. It allows me to create a virtual com port which multiple applications can connect to (up to 8) instead of having to create one per application. Furthermore, it can also forward requests for the real port to the virtual port, protecting the real port.
Seems to be working so far. All I have to do is add it to the startup.