le he leído ya ... mmm una vez me enfrenté a una situación así ... lo solucioné con 1 tabla para los encabezados y 1 div para los registros ... algo parecido a esto:
Código HTML:
<table style="width:200px;">
<tr>
<td>encabezado1</td>
<td>encabezado2</td>
<td> </td>
</tr>
</table>
<div style="width:200px; height: 100px; overflow-y: scroll;">
<table>
<tr>
<td>elemento 1</td>
<td>elemento 1</td>
</tr>
...
<tr>
<td>elemento n</td>
<td>elemento n</td>
</tr>
</table>
<div>
checa que aquí en los encabezados tienes un <td> extra ... es para que no se vea desfasado ... cuando aparezcan los scrollbars ... el único problema de esta solución es q no es precisamente dinámico ... ya que depende del tamaño y tipo de letra que uses ...
lo que puedes hacer es quitar el "nowrap" de tus campos de detalle y dimensionar a un tamaño fijo tanto los campos d encabezado como los de detalle ...
es lo que yo hice y funcionó ...
ojalá te sirva ...
saludos