You are on the right track. When you drill into a VM using the Azure Management Portal, you should be able to Add a new endpoint under the "Endpoints" section. You will want to create a standalone endpoint for each port you wish to expose. The name is up to you, the public and private port will most likely be the same in your case and you can leave the checkboxes (Load-balanced set and direct server return) unchecked.
You mention they all have the same external IP, which is not an issue as long as all the ports are unique to each machine. In other words, you cannot have port 80 forwarded to both VM2 and VM3.
Finally, don't forget to open the corresponding private ports on the individual Virtual Machine's firewall as well.