In most cases, I'd say "yes", but not in the case of a Content Management System. I like your MasterView idea, but you'd still need a controller to handle the model manipulation for that. Something's got to hit the database to determine what partial views to display on a particular page, and I think that might just be the responsibility of a specific, focused controller somewhere. A CMS is an exception when we're talking about separation of concerns, because of exactly what it's trying to do. If the business logic of your domain IS to map modules/views together onto pages, and you have database tables to facilitate that, then View manipulation is exactly what your controller will do. Controllers handle whatever their domain requires them to handle. It just so happens that a CMS will probably have at least one controller who's primary responsibility is handling the mapping of Views onto pages. That controller might handle Views like another controller would handle Products or Employees. I totally agree that all the partial views should be completely ignorant, however, of anything but their own piece of the pie.
That's why my idea to encapsulate all of this into RenderView is the best I've come up with so far. Every partial view would just call his own Render for his View, then RenderView is responsible for figuring out if the parent View has been "built" and calling out to the other partial view's controllers to have them render their pieces, then aggregating the results. That way the page-building logic is in RenderView (might consider it the "framework") and out of any specific controller.