1) manda le email come picchio ti pare, ricorda che personalizzarle aggiunge valore al servizio.
2) per il secondo problema personalmente io l'ho risolto facendo in modo che ogni 5 mail inviate lo script reindirizza a se stesso, inviandosi come parametro aggiuntivo l'ID dell'ultimo utente a cui la mail è stata inviata...è ovvio che inizialmente l'ID sarà 0 e la select qualcosa del tipo:

SELECT Email FROM Utenti WHERE ID > $_GET['ID']...

PS: se farai come ti ho detto prima metti la mail nel DB e dopo la invii recuperandoltela di volta in volta ad ogni redirct.