Eu começaria executando o Wireshark e confirmando sua teoria de que os clientes estão se comportando mal. Se for esse o caso, não há muito que você possa fazer para impedir isso, mas você pode adicionar inteligência para fechar essas conexões do seu lado de forma mais agressiva (tanto no Tomcat quanto no Apache).
Também é importante notar que, se esse tipo de mau comportamento tiver impacto significativo em seu aplicativo, você estará suscetível a alguns vetores simples de ataque DoS ( O Slowloris vem à mente como uma possibilidade, embora algo que vá até o seu aplicativo e desapareça seja mais eficaz).