You are missing that you need to generate html <br/> and {{=anything}} always escape anything.
You want:
<td class="span8">{{=(row.body1)}}<br/>{{=(row.body2)}}</td>
or
<td class="span8">{{=CAT(row.body1,BR(),row.body2)}}</td>
or
<td class="span8">{{=CAT(row.body1,XML('<br/>'),row.body2)}}</td>
or
<td class="span8">{{=XML(row.body1+'<br/>'+row.body2, sanitize=True)}}</td>
The latter is not quite the same as the others as it allows some HTML in the row.body1/2.