Primo progetto... irrigazione

No, la break no c'entra nulla, quando la incontra Arduino semplicemente esce dal ciclo in cui è quell'istruzione.
Tu non metti tutto il codice, quindi non saprei dirti, secondo me esce da un qualche tuo ciclo.

Secondo me devi cambiare la logica. Devi avere una variabile chiamata di statoRele, magari una byte che può assumere 2 valori, K_RELE_ACCESO e K_RELE_SPENTO

const byte K_RELE_ACCESO=1;
const byte K_RELE_SPENTO=1;
byte statoRele=K_RELE_SPENTO;

Quando ricevi IRR1=1 o IRR1=0 cambi solo il valore di questa variabile.
Poi alla fine della loop() potrai mettere un codice che verifica il valore di questa variabile di stato
e nel caso sia a K_RELE_ACCESO allora con la millis() verifichi se è passato il tempo e accendi il rele.