Do you know how many rows fit on each page? If so, you can build logic into your microflow to return only a specific number of objects in each list, and other functionality to know what was the last object that was returned.
Based on this stackoverflow question, you might be able to use the recommended FOP property for this, which is:
keep-together.within-column="1"
Try removing those page-break css properties and adding:
keep-together.within-column:1;