You are experiencing the repercussions of storing data in XML. By default, all redundant non-printable characters (spaces, blank lines, tabs, carriage returns) are stripped out of the text data. There are solutions to this issue, but they aren't implemented within the code of the textbox component.
If you need to preserve formatting, try the HTML Edit component. It will store your text and the text's markup (HTML) in the same text variable, allowing you render it the same way next time. If you want to render it again, I believe you want to use the HTML Merge component on your form (instead of the default Ascii Merge component).
The drawback to using this technique is that now your data is no longer clean. You can't easily compare the user's input to another text value and be sure they are the same. So, only use the HTML Edit component when you need the data for displaying, and not for important processing. For example, it's probably okay if you want to use it to add a comment to a Change Request process, but not okay when a user is specifying the model number for their new cell phone.