Chris,
Unfortunately, renaming the VIs in (2), though tedious, is the safest approach. Someone will probably chime in and tell you that dynamically loading and unloading VIs using VI Server might work, but that will just make things more complicated IMO. (Dynamic loading/unloading has its place if you set out to design the app that way, but you're dealing with a large existing codebase.)
I suggest appending a short prefix to all the VIs in (2), effectively creating a new namespace for those VIs, then relink the VIs in (1) to the renamed (2) VIs.
The LabVIEW team is working on addressing these kind of namespace issues in future versions of LabVIEW.
Steven H.