What I do is use
OpenWebStudio (OWS) to handle the customisation of css and content. Using a very simple menu in it at the moment, not numerous drop-downs but it shouldn't be a problem adding a menu within this using something like jQuery.
The portal side is easy, just using a single DNN portal and the portal aliases.
I have SQL table which lists the portal aliases and the different css settings, and on loading OWS picks up the alias used. It then imports a CSS file which is created dynamically by OWS too.
The menu just uses IFs to add items depending on what is available for the alias. Some HTML is also controlled for each alias but then chunks that are needed for all just have some custom parts done with a set of common base html.
My needs for customisation on this are fairly simple really... to have each portal look different, and a small amount of different content.
All these are the same portal:
http://my.web-accountant.com/HanleyandCo/
http://my.web-accountant.com/TheAccountantsCircle/
http://my.web-accountant.com/HNicholsons/
http://my.web-accountant.com/YorkshireAccountancy
http://my.web-accountant.com/MyPAYE/
http://my.web-accountant.com/My-Umbrella
... you get the idea.
Using png and transparency allows a bit more to be done easily too, as the tools I have running within the portals have a sub-menu which matches the menu bar.
As the CSS is all stored for each alias, aliases have specific users that can manage this and their content as they please.
Does that help give ideas? Is it similar sort of control you are looking for?