O Tomcat 7 suporta a exibição de arquivos estáticos fora do WAR. Veja aqui (ponto 4.) Já experimentou?
Você pode confirmar que é o Tomcat que gera esse atraso (por exemplo, usando o log de acesso do Tomcat)? Não deve ser difícil correlacionar o arquivo baixado lentamente com a entrada no log de acesso no lado do servidor.
O que os encadeamentos HTTP estão fazendo durante o teste? Seria incrível despejar rastros de pilha quando esse fenômeno acontece. Se você perceber que algum recurso demora muito tempo para fazer o download, basta executar o dump e localizar o encadeamento culpado (com o registro de acesso sintonizado, você pode imprimir o nome do encadeamento).