Graças a Mark B (ver comentários) descobri que o navegador era a causa. Mais exatamente plugin firePHP no Chrome. Depois de desativá-lo, tudo voltou ao normal.
Por alguma razão, o firePHP faz o navegador chamar a página duas vezes quando nenhum eco é feito.