DNS and ports are completely separate. A DNS record only points at an IP. What you choose to put on that IP and what port you do it on, it completely up to you (and whoever controls the network at your end).
You want to host multiple websites on one IP/Port combination. For that you want Apache's virtual hosts feature (which is uses to some extent by default). When you request a page from a server, you tell it what domain you're requesting it from. Apache can read this and decide what site you see.
You can see example docs here.
In terms of DNS, you just point both domains at your IP. That's it. The rest is Apache.