A minha resposta baseia-se apenas no "meu entendimento" sobre MVC!
A validação de dados em si é de responsabilidade do MODEL, mas o model não deve saber de onde vem estes dados, apensas fazer o que propõe a ser feito!
No caso dos dados vindo de formulário, o Model não deveria saber quais campos existem no formulário, pois ele só responde ao Controller e/ou usa uma camada mais abaixo de abstração, um DAO por exemplo.
Quem deve conhecer a view e saber quais campos existem no formulário é o Controller, sendo assim o trabalho do Controller não é fazer
todo trabalho de validação, mas sim, verificar se o campo do form que pede um e-mail por exemplo ao usuário, é realmente um e-mail, se o campo é obrigatório, se deve ter um valor ou não, etc... E então passar ao Model que deve filtrar e validar mais a fundo os dados,