Vermutlich nicht die eleganteste Lösung, aber füg doch einfach einen ComponentListener hinzu und führ deinen Code aus, wann immer das Fenster verändert wird. Etwa so

Code:
frame.addComponentListener(new ComponentAdapter(){
  public void componentResized(ComponentEvent e)
  {
    // Hier die Größe der Komponenten anpassen
  }
});
Jetzt mal unter der Annahme, du hast den Code für die Größenveränderung schon geschrieben (es klang so) dürfte das eine zumindest schnelle Lösung sein.