Buenas!
Ya he conseguido solucionar el problema que tenía. Lo posteo por si a alguno le viene bien.
A la hroa de imprimir, yo usaba el metodo "printReport", y ahora he pasado a usar "printPages":
Código:
int hojas = reporte.getPages().size()-1;
JasperPrintManager.printPages(reporte,0,hojas-1, false);
Ahora bien, no me prgeuntéis porqué hay que hacerle "-2" (-1 y -1), pero he probado con -1 sólo y me seguía saliendo la hoja extra en blanco pero con cabecera. Imajino que será porque por alguna razón, la lista sea mas larga de lo que realmente es, aunque los elementos sean null. Imajino que normalmente se tendrá que hacer -1.
Saludos