Beh.... un po' più codice non avrebbe fatto male per dare una risposta.

Ad ogni modo, ho la sensazione che ci sia un doppio nl2br(): uno nell'inserimento del testo nel DB, uno nell'estrapolazione.

Vedi un po' se ho ragione io?