Service per Controller
"A service per controller" sounds like a bad architecture. A good service should 'know' nothing about controllers and presentation details. Controllers should be thin, and any repeating code there should be abstracted into general purpose services not specific to controllers.

"UserViewService" should never be a name of Controller! And comments are not there to fix the confusion created by bad naming! In Angular, there are Services, Controllers, and Views - these are your Angular templates. You can have UserService and UserController, then your template can be called user-view. 

Having new inside your Controller looks like a "code smell" to me. Controllers are only executed once upon initialization, and their purpose is to glue your data to your view (via Angular's $scope (which is in the ViewModel layer). The data should be either ready or you should get it from a service. Any other work like object creation is bloating your controller with too many responsibilities.

Further, it is Angular's job to create Services for you, so no need for new UserViewService whatsoever.

This function naming is misleading:

function watchUser() {
    return svc.user;
};


The name should tell roughly what function does, so I can skip this function's definition and still understand the rest of the code. This is a standard "getter"-function and should be name like that:

function getUser (svc) {
    return svc.user;
}


Note. Your code looks cleaner without ; after function declarations.

You watch svc.user and then update it upon change - this looks like a loop and may lead to your browser crash. Read best practices on using Angulars watch.