Potresti paginare l'operazione inviando un certo numero di mail per volta. Fai un ciclo for che invia un tot numero di mail e poi ricarichi la pagina passando in GET oppure mettendo in sessione il numero di mail inviate fino a quel momento in modo da poter riprendere il ciclo dal punto in cui era stato interrotto.