Você só precisa adicionar um arquivo chamado:
_ViewStart.cshtml
Em cada pasta de visualizações de área:
/Areas/Area1/Views/_ViewStart.cshtml
E edite o arquivo para apontar para o layout raiz como este:
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
Para que isso funcione, você não precisa especificar um valor na propriedade de layout da visualização, se o fizer, você estará substituindo o layout global
Nota: Como Tony mencionou, você pode editar a propriedade de layout de cada visualização para apontar para o layout raiz, no entanto, esta não é a maneira recomendada de fazer isso, pois você acoplaria suas visualizações com seu layout e alteraria seria doloroso
Editar 1
Se você gostaria de usar o código para definir o layout da visualização padrão, talvez você deva considerar a criação de um mecanismo de visualização customizado.
Tente google sobre custom RazorViewEngine
eRazorView
Este artigo pode ser um bom ponto de partida
http://weblogs.asp.net/imranbaloch/archive/2011/06/27/view-engine-with-dynamic-view-location.aspx
Eu não fiz algo assim, mas espero estar apontando na direção certa