The situation encountered by the poster is the requirement to connect to
multiple clients of his using VPN. He receives the VPN software from the
clients, software almost always intended to be used under Windows.
Unfortunately, his program was written on and runs in Linux.
The poster's requested solution is to use a Windows VM to act as the router
to the VPN, so running the VPN client under Windows and connecting to it
from the Linux host.
This solution will not work in all cases, since many companies
have the bad habit of making their VPN compulsory, so that the connected VM
will be isolated from the host network and will not be able to route requests.
(Luckily no firewall can disconnect the VM's desktop from VMWare running
on the host.)
One possible solution is use a Linux client for the VPN.
Most VPN clients for Linux are free, but even if not,
then the client did pay for the product and so can get you the Linux client
if you really insist. This is by far the simplest solution.
A second solution is by inverting the architecture.
I suggest getting a Windows computer and installing on it the various
VPN clients. The Linux program can then be installed in a Linux VM
which will use the host's network.
This solution will work even for a compulsory VPN.
A third solution relies on the fact that modern hypervisors now support
embedded hypervisors, which is a hypervisor running in a virtual machine.
This architecture is a bit far-fetched, involving your Linux hosting
a Windows VM with its embedded hypervisor running an embedded Linux VM
containing your product.
This solution will also work even for a compulsory VPN,
but you will have to weight its advantages versus disadvantages.
It might force you to use another VMWare product than the one you are
currently using. I admit to not knowing if this solution is really feasible.