Il trigger si attiva all'aggiornamento o all'inserimento di CONTRATTI, quindi tenta di aggiornare i CONTRATTI, che attiva il trigger.... Vedi il problema?
Devi calcolare la data di fine e quindi eseguire effettivamente l'inserimento/l'aggiornamento.