Firstly, your "Furthermore:" we will take care once finalized with current part.
Second option that I suggested aligning to Godaddy's hosting option, you can tweak your configuration a little bit and get same result. For example, you can create four virtual host addition to main domain and configure different document root/mysql db with password protection, so only authenticated users can browse test sites.
Anyways coming to first option,
The setup I am suggesting, is your desktop will have two IPs: one static IP for accessing from internet and another one to communicate to VMs. This is for better security and complete control.
In VirtualBox setup, you will find some option of Bridge network, in which your desktop (VM guest) can ping IPs of VM hosts provided network criteria are meeting (like netmask, subnet, gateway etc.)
For VM network, you can have something like:
Network : 10.1.0.0/255.255.255.0
Default Gateway: 10.1.0.1
Guest IP: 10.1.0.1
VM IPs: 10.1.0.21/22/23/24
Do the standard network troubleshooting to make sure VMs are getting pinged from Desktop and sites are opening.
The second part about installing Apache, is because to have standard setup, where all traffic comes to static ip and port number 80. Your desktop will be connected to 10.1.0.0 network, so it will easily redirect traffic to port 80 of different VMs.
I am not sure your setup of routing traffic directly at router end, when your website names will be different. One option here is running websites on different ports like 1001/2/3/4 and redirecting traffic for those ports at router end. In this case, you do not need to install apache on Guest/Desktop.
I hope this clarifies your doubt.