Ok, quindi ciò che ho postato io non è l'effetto che vuoi ottenere.

Spulciando la rete ho trovato due tecniche diverse per ottenere lo stesso effetto, entrambe con dei problemi non proprio banalissimi da risolvere.

Primo approccio:
Costruire un RowSorter che sia in grado di riordinare le righe in modo tale da avere sempre nel "footer" le righe interessate. Questo è nu approccio che si adatta bene al tuo caso, dato che hai una tabella di dimensione verticale fissa che ti visualizza sempre 15 righe. In questo caso il RowSorter dovrebbe riordinare le righe in modo da avere sempre nelle posizioni 11, 12, 13 e 14 le 4 righe del footer (nel caso il modello contenga meno di 15 righe, le dovrebbe visualizzare nelle ultime posizioni).

Difetto: risulta, a quanto sembra, difficoltosa la selezione delle righe del footer.

Secondo approccio:
Costruire una seconda tabella con lo stesso TableModel della principale. Questa seconda tabella conterrà solo le righe del footer e dovrà essere posizionata sotto la tabella principale (senza un JScrollPane, quindi senza TableHeader).

Difetto: risulta difficile sincronizzare la visualizzazione delle due tabella nel caso di ridimensionamento (o riordino) delle colonne.

Ciao.