It is quite easy to fix the width of a column to a fixed percentage. If it only two columns, you only need to specify one.
and in HTML:
Keeping the table on one page is difficult. You could try something with page-break-avoid, but than it must fit on a page. With the different zoomlevels, that is hard to control.