La tua classe MyTableView estende JPanel, ovvero è un "pannello". In JPanel il layout manager predefinito è un FlowLayout che, come dice il nome, fa "fluire" i componenti dall'alto verso il basso, da sinistra a destra. Esattamente come fa un word processor con le parole o come certe pagine web per cui ridimensionando la finestra vedi che le parole "fluiscono" allungando o meno il documento. Evidentemente non è questo che ti serve.
Innanzitutto devi aver ben chiaro come devono disporsi i componenti, come devono spartirsi lo spazio, ecc...
Questo non l'hai precisato, a parte dire che vuoi sfruttare lo spazio inutilizzato sotto.
Devi avere anche ben chiaro quali sono i layout manager principali e quali sono le loro regole e concetti. FlowLayout (già detto sopra), BorderLayout, GridLayout, GridBagLayout, CardLayout e BoxLayout (di Swing) sono quelli più comuni. Generalmente riesci a fare il 99% delle interfacce utente utilizzando uno o più di questi layout manager, tipicamente "inscatolando" componenti dentro contenitori, dentro altri contenitori, ecc....
I layout manager GroupLayout e SpringLayout entrambi di Swing, sono complicatissimi, quindi in genere sconsigliabili se si scrive il codice "a mano".