Consider the following HTML:
Number one Number two &
Firefox now supports this:
page-break-inside: avoid;
This solves the problem of elements breaking across columns.