Aaron,
From a generic table model, the answer is really no, the generic model can always be modifed by the author.
Now within the FOSI (and for a portion of this, even in FO) you can do some heavy duty formatting to produce an unchangeable header. In both FOSI and FO, you can take the elements that would be the table body and convert it to a table, and then generate the table header information in the stylesheet.
Within FOSI, you can use the and a to accomplish the same thing. will align specific elements across the page and then you can use the to establish your header. Both and can be found in the on line help.
As to setting a fixed number of rows, you could do this within the DTD or schema, but beyond that, not really. Say for a three column four row semi table.
If you get much bigger than this, then you could have problems.
Lynn