Ripeto:
il tag CAPTION può essere presente AL MASSIMO una sola volta all'interno della tabella.

Il codice html che generi è sbagliato, indipendentemente da cosa il tag contenga e da dove ne ne generi il contenuto.

Se vuoi un impaginato di un certo tipo, trova la soluzione HTML che te lo fornisce, che non c'entra nulla col codice php.

Nel tuo caso, scusa se lo ripeto per la terza volta, è il codice HTML ad esser sbagliato.

Se vuoi più "titoli" cerca una soluzione differente... ad esempio,metti il titolo in un riga della tabella... oppure crea più tabelle