After re-reading your note I think I understand a bit better...
Yes, you could use a repeat-group to implement the rows of the table, much as you can do today with the current 'table' of selects workaround.
I think what you are proposing is to have an new appearance on a repeat group such that the text/number questions in that group are now displayed horizonally, and without their label (except for the first row, where you want to display the labels, and not the associated text/number entry box). eg in XML:
<group ref="/data/table">
<label>table</label>
<repeat appearance="table" nodeset="/data/table/row">
<label>row name</label>
<input ref="/data/table/row/column1">
<label>column1</label>
</input>
<input ref="/data/table/row/column2">
<label>column2</label>
</input>
<input ref="/data/table/row/column3">
<label>column3</label>
</input>
<input ref="/data/table/row/column4">
<label>column4</label>
</input>
</repeat>
</group>
would be rendered as (for 3 repeats):
Of course, you'd need some logic to change the row name between each repeat, but this could be accomplished via existing means (eg see this).