O Apache não está fazendo nada errado: você tem dois tempos limite porque chamou o PHP duas vezes.
A primeira vez foi sua tentativa de carregar a própria página da web, que expirou.
A segunda vez foi a tentativa do Apache de carregar o ErrorDocument
que, porque não existe, foi passado para o PHP para processamento.
Para resolver o problema, defina ErrorDocument
como uma página HTML estática.
ErrorDocument 504 /failwhale.html