I have following XAML:
The spaces between the run tags cause the spaces, this is the easiest fix.
Because anything between the and is targeting the text property of the TextBlock the whitespace from the breaks between the runs causes the effect you see. You could also shorten it to this.
+
This MSDN article gives all the specifics on how xaml handles the whitespace
http://msdn.microsoft.com/en-us/library/ms788746.aspx
If you were curious why a break and a ton of tabs translates into a single space
All whitespace characters (space, linefeed, tab) are converted into spaces.
All consecutive spaces are deleted and replaced by one space