Iba a agregar un comentario a su pregunta, pero no tenía suficiente espacio allí para formatear y dar el ejemplo.
Aquí hay una idea que creo que podría funcionar:
1 - Cargue todos los correos electrónicos que desea enviar a una base de datos o archivo.
2 - Desde su aplicación web haga clic en el botón para enviar correos electrónicos. Esto enviará una solicitud Ajax al servidor. Puede definir la cantidad de correos electrónicos que desea enviar dentro de un período de tiempo determinado. Recuerda que la mayoría de los anfitriones tienen límites en la cantidad de correos electrónicos que puedes enviar cada hora.
3 - crea un script php que recibirá la solicitud de Ajax y enviará todos los correos electrónicos dentro de los parámetros que definas.
4 - Creo que puede eliminar su navegador web porque el script PHP se ejecutará en toda la lista y no regresará hasta que termine de enviar todos los correos electrónicos.
Lo anterior podría funcionar, sin embargo, nunca lo haría de esta manera. Yo usaría un cronjob como se indicó anteriormente. Su cronjob solo tendría que verificar si hay correos electrónicos para enviar o no. Esto no requiere muchos recursos.
Si decide implementar las ideas anteriores, asegúrese de hacérnoslo saber. Tengo curiosidad si eso funcionaría.
¡Buena suerte!