I don't know of any existing tools. I know this perhaps doesn't answer your question directly, but I can just share my experience of working on large projects.
We've always split large solution files into a number of smaller ones of related projects. Then you can open one or two visual studios to see the projects you want to work on.
Then we have an msbuild script that builds each solution in turn to generate the entire product and installers.
No dynamic solution generation is needed. I'd worry that it might take quite a bit of work to maintain something like that, and also you'd have the situation where you're constantly working on different dynamically generated solutions so you never get to remember where things are. With a few fixed solution files, you can organize the projects into a few folders and then you've got some kind of organization in your head as to what goes where. With some decent organization, I find I only occasionally need to open and work on two solutions simultaneously.
We have one or more base/core solutions which contain projects with definitions that are shared between the other solutions. But, I haven't found it necessary to duplicate all the dependant projects from the base alongside the higher projects that use them. You can still debug your way through dependant projects without having them in the solution. If you do need to make a change, open the base solution and edit and build it and carry on.