Comece preparando as berinjelas. Salpique as fatias com sal e deixe descansar por 30 minutos para retirar o excesso de umidade e o amargor. Enxágue e seque as fatias.
Grelhe ou asse as fatias de berinjela até que fiquem macias. Reserve.
Agora, vamos passar para preparação do molho de carne.
Em uma panela grande, aqueça um pouco de azeite e refogue a cebola até ficar translúcida. Adicione o alho e refogue mais um pouco.
Acrescente a carne moída e cozinhe até dourar.
Adicione os tomates pelados, o extrato de tomate, a canela, a pimenta-do-reino, a noz-moscada e o sal. Cozinhe em fogo baixo até que o molho engrosse (cerca de 20 a 30 minutos).
Em outra panela, faça o molho bechamel. Derreta a manteiga e adicione a farinha de trigo, mexendo bem para formar um roux.
Aos poucos, adicione o leite, mexendo constantemente para evitar grumos. Cozinhe em fogo médio até o molho engrossar.
Retire do fogo, adicione as gemas de ovo, o queijo parmesão, a noz-moscada, o sal e a pimenta-do-reino. Misture bem.
Por fim, faremos a montagem.
Preaqueça o forno a 180°C.
Em um refratário, faça uma camada com metade das berinjelas. Por cima, espalhe todo o molho de carne.
Adicione mais uma camada de berinjelas. Cubra com o molho bechamel.
Asse por 45 minutos ou até que a superfície esteja dourada e borbulhante.
Deixe o prato descansar alguns minutos antes de cortar e servir.