Giusto, in effetti quel return faceva in modo di uscire dalla funzione, ma esce da quella definita per l'each, non da controlla_e_invia.
La soluzione che hai adottato mi sembra buona.