Right now the experimentation is strictly HTML. I have created a simple BBCode for it, but it is not relevant at this time; it does the same thing.
As for any "validator", I could try that but this is the only place such a problem occurs.
That is most likely why your having the problem. All of your line breaks in code will be converted to line breaks once parsed inside of the post message area. The only way around that, that I know if, is to do the straight line code as you mentioned.
There are a number of modifications here on the site that attempt BBCode Tables in various ways. You might want to take a look at them, if at the very least just to get some ideas.