JSF e HIBERNATE com dois EntityManager está misturando as associações entre as entidadades

Tenho dois banco de dados com a mesma estrutura porém populados com dados diferentes, preciso ler uma entidade especifica nos dos dois bancos e exibir para o usuário.

Até aqui é de boa, uso dois EntityManager (EM) um para cada banco, faço um select com o primeiro EM e jogo para uma ArrayList depois faço o mesmo com o segundo EM e adiciono na ArrayList.

Depois jogo minha ArrayList numa tabela exibindo ao usuário então as informações dos dois bancos juntos. até ai tudo certo, agora eu preciso que ao clicar em uma das linhas tabelas selecionando a entidade, uma outra tabela seja carregada com uma lista de outras entidades relacionada a ela.

Aqui é onde dá o problema, as primeira linhas da tabela que era referente ao primeiro EntityManager o hibernate faz a associação correta puxando as entidades relacionadas corretas, porém ao clicar em uma entidade que foi buscada pelo segundo EM, o hibernate ao invez de buscar os dados ao entityManager relativo a ele que é segundo, ele continua com o primeiro entityManager!!

Exemplo:

No primeiro banco tenho um pai chamado João (id = 1) que tem filho chamado Pedro (id = 1) .
no segundo banco tenho um pai chamado José (id= 1) que tem um filho chamado Zé (id = 1).

porém na minha aplicação o resultado é exibido assim:

João tem um filho chamado pedro. (ok, certo)
José tem um filho chamado pedro (???)

Eu fiz alguns testes aqui e quando eu faço um foreach no ArrayList apos os dois selects para imprimir no console as entidade e associações, elas são impressas corretamente, porém na tabela com o JSF não funciona! parece que o JSF ignora que minha entidade já carregou as entidades relacionadas ao fazer o select, e chama o hibernate para carregar novamente, porém ele carrega errado!

Qualquer informação que possa me ajudar a esclarecer isso é Bem vinda!!