Embora sua descrição do problema não forneça uma visão completa da base de código, acho que posso dizer com segurança que seu problema é duplo.
Aprenda a escrever os testes certos.
Você diz que tem quase mil testes e tem 120 projetos. Supondo que no máximo metade desses projetos sejam projetos de teste, você tem 1000 testes para 60 projetos de código de produção. Isso fornece cerca de 16 a 17 testes pr. projeto!!!
Essa é provavelmente a quantidade de testes que eu teria que cobrir cerca de uma a duas classes em um sistema de produção. Portanto, a menos que você tenha apenas 1-2 classes em cada projeto (nesse caso, a estrutura do seu projeto é muito refinada), seus testes são muito grandes, eles cobrem muito terreno. Você diz que este é o primeiro projeto que você está executando o TDD corretamente. Por exemplo, os números que você apresenta indicam que esse não é o caso, você não está fazendo a propriedade TDD.
Você precisa aprender a escrever os testes certos, o que provavelmente significa que você precisa aprender a tornar o código testável em primeiro lugar. Se você não encontrar a experiência dentro da equipe para fazer isso, sugiro contratar ajuda externa, por exemplo, na forma de um ou dois consultores ajudando sua equipe por um período de 2 a 3 meses para aprender a escrever código testável e pequenos testes unitários mínimos.
Como comparação, no projeto .NET em que estou trabalhando atualmente, podemos executar aproximadamente 500 testes de unidade em menos de 10 segundos (e isso nem foi medido em uma máquina de alta especificação). Se esses fossem seus números, você não teria medo de executá-los localmente de vez em quando.
Aprenda a gerenciar a estrutura do projeto.
Você dividiu a solução em 120 projetos. Pelos meus padrões, é uma quantidade impressionante de projetos.
Portanto, se faz sentido ter realmente essa quantidade de projetos (o que acho que não tem - mas sua pergunta não fornece informações suficientes para fazer um julgamento qualificado disso), você precisa dividir os projetos em componentes menores que pode ser compilado, com versão e implantado separadamente. Portanto, quando um desenvolvedor executa a unidade do conjunto de testes, ele só precisa executar os testes relacionados ao componente em que está trabalhando atualmente. O servidor de compilação deve verificar se tudo se integra corretamente.
Mas dividir um projeto em múltiplos componentes, compilado, com versão e implantado separadamente exige, em minha experiência, uma equipe de desenvolvimento muito madura, uma equipe mais madura do que eu sinto que sua equipe é.
Mas, de qualquer forma, você precisa fazer algo sobre a estrutura do projeto. Divida os projetos em componentes separados ou comece a mesclar projetos.
Pergunte a si mesmo se você realmente precisa de 120 projetos?
ps Você pode querer conferir o NCrunch. É um plug-in do Visual Studio que executa seu teste automaticamente em segundo plano.