Hi Ken,
Thanks very much for the response. Yes - the carriage returns are still inserted.
However, this gave me an idea and after much fiddling, I seem to have discovered the source of the problem. I have MS AntiXssEncoder set as my encoder type in web.config. When this is removed, the problem is resolved.
So I won't be using that particular library anymore!
Once again, many thanks for the response.