Everton,
Você não pode criar dependencia mútua entre seus assemblies, como você mesmo viu, isso causaria a referência circular.
O que você pode fazer é criar um terceiro assembly com aquilo que deve ser compartilhado e então apontar referência nos seus dois projetos originais a este terceiro assembly.
Em geral a camada de apresentação não é apontada por ninguém dentro do mesmo projeto, ela estaria no top.
Se tem algo dentro da sua camada de apresentação que deve ser exposto para outras camadas, o ideal é separar estas classes num terceiro assembly. Aí você aponta referencia a este terceiro assembly em todos os projetos que quiserem fazer uso destas classes sem maiores problemas.
Abraços,
Francisco
OK, Computer - http://thespoke.net/blogs/fbcjunior/default.aspx