El problema seguramente sea max_execution_time de php. Podes probar dejandolo correr "libre" con
set_time_limit ( int segundos ). Localmente seguro no tendran problemas, pero si lo subes a un host compartido dudo que permitan quitar dicho limite.
La otra es dividir tus 1000 correos en X paquetes de mails.
Saludos