eu tive um Problema semelhante com Autofixture e EntityFramework há um tempo. Minha solução foi adicionar uma extensão à manutenção automática, que permite construir um SUT com algumas recursões. Essa extensão foi adotada recentemente no Autofixture.
Mas entendo que sua pergunta não era sobre como tornar as estruturas de dados recursivas de construção automática, o que é realmente possível, mas como criar modelos de domínio sem recursão.
Primeiro, você tem estruturas de árvore ou gráfico. Aqui tudo, menos a recursão, significaria indireção por meio de IDs de nós soltos acoplados. Em vez de definir uma associação, você teria que atravessar a consulta de árvore ou cache a coisa toda e atravessar a pesquisa da tecla de nó, o que pode ser impraticável, dependendo do tamanho da árvore. Aqui é muito conveniente fazer o EF fazer o trabalho para você.
A outra estrutura comum é uma estrutura de navegação bidirecional semelhante ao seu cenário de usuário / jogo. Aqui geralmente não é tão inconveniente podar o fluxo de navegação para uma única direção. Se você omitir uma direção, digamos do jogo para o time, ainda poderá consultar facilmente todas as equipes para um determinado jogo. Então: o usuário tem uma lista de jogos e uma lista de equipes. A equipe tem uma lista de jogos. Os jogos não têm referência de navegação a nenhum deles. Para obter todos os usuários para um jogo específico, você pode escrever algo como:
var users = (from user in DataContext.Users
from game in user.Games
where game.Name == 'Chess'
select user).Distinct()