Hi,
If you want to blend 2 independent applications into a single website, and each application should render their stuff on their own without too much integration, that can be as complex as you want 🙂
First of all, having everything reachable below a single namespace should not be to hard. As you mentioned, setup a virtualhost and partition it with <Location> statements; then inside the location you can use mod_proxy (or the AEM dispatcher module) to forward requests to these locations to the appropriate system. That's the easy part.
Next is a consistent site navigation. You need to be able to navigate from a page of app1 to a page delivered by app2. And vice versa. So both applications need to be able to create links to the other application, which requires each application to export the relevant information to be used by the other application. Not to mention sitemap, shared design and functionality, deployment alignments, ...
There's a lot you probably need to consider.
Jörg