Your're almost right with suspecting <TT> to be responsible. <TT> is "typewriter text", to use a monospaced font. <PRE> is the evildoer, the "preformatted" text is output as in the html file, all spaces and linebreaks are kept. That's why there are no <BR>s.
Sorry that I don't have a solution for your problem, but maybe it "demytifies" the thing a bit.
PS: I'm new in this nice forum!