In case you are talking about having infrastructure and business logic concerns - projects would be preferable.
No need to deploy more Assemblies than necessary
I think this shouldn't matter much, unless you have hundreds of dlls.
Smaller/Leaner solution itself
Solution size would be approximately same - you just replace project folders with namespace ...
What you are describing is the service locator pattern. Most times it is considered an anti-pattern, however given that Unity instantiates the components, and likely requires a constructor with certain arguments, a service locator is about your only choice.
The most important part of your solution is naming the method that receives the service locator. Make ...