Se fosse um ataque DDoS, você pareceria muitas dessas conexões de vários locais. Você não dá nenhuma estatística na sua pergunta, então não podemos julgar.
Se muitas das solicitações lentas vierem do mesmo local, especialmente se forem de um objeto grande, talvez você tenha pessoas abrindo muitas conexões usando um gerenciador de downloads.
Se você não estiver bloqueado no Apache por motivos específicos, pode considerar uma mudança para um servidor baseado em uma arquitetura orientada a eventos, em vez de uma baseada em ameaça / processo, como nginx. Isso permite que o número de conexões simultâneas seja escalonado com muito mais eficiência, pois cada solicitação básica requer muito pouco recursos extras (principalmente RAM) - embora a escalabilidade em solicitações de recursos com script possa variar muito dependendo da configuração, obtendo-se a eficiência de O modPHP (a menos que você já o execute no modo CGI (faust)) pode ser mais fácil de configurar, por exemplo, e é claro que você pode estar usando outros módulos / recursos que não são bem suportados pelo Apache.
Você também pode alocar mais RAM e aumentar o número máximo de processos / threads do Apache.
A meio caminho entre essas duas soluções é que, se as solicitações lentas forem para recursos estáticos, você poderia usar o servidor web leve para servir o conteúdo estático (com muito menos RAM do que o Apache) e fazer proxy das solicitações com script (e outro requer os recursos extras além de apenas servir um arquivo) para a configuração do Apache. Muitos sites com grandes cargas pesadas operam de maneira semelhante a isso.
Não sei de um método que limita a quantidade de tempo que uma única solicitação pode levar - isso provavelmente não resolveria seu problema, porque em uma situação de DoS ou no caso de gerenciadores de download, nova conexão será imediatamente tentada.