I've looked at this a couple of times, and my first reaction is that there should be header and footer...
but if there are formulas to suppress the header and footer, it could be that the when the page break is forced, that the suppression formulas are enforced which could result in the events that you are seeing.
CR handles NULL values in an 'odd' way (I think it raises an error, but doesn't display it) which could cause unanticipated results.
this is a bit off topic, but if you have this in your code:
if {table.field} = 7 or isnull({table.field}) then...
if your data is null, CR won't execute the code even though you check for ISNULL, but....
if isnull({table.field}) or {table.field} = 7 then...
will work as expected.
there might be other gotcha that I don't know about, but this is one that is easy to make (I'm sure that I made it a few times myself)
HTH