allora, questo il main:
codice:
public class Main {

    public static void main(String args[]) {
            try {
                for (UIManager.LookAndFeelInfo info : UIManager.getInstalledLookAndFeels()) {
                    if ("Nimbus".equals(info.getName())) {
                        UIManager.setLookAndFeel(info.getClassName());
                        break;
                    }
                }
            } catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException ex) {
                JOptionPane.showMessageDialog(null, ex.getMessage());
            }
            EventQueue.invokeLater(() -> {
                new FrameStart().setVisible(true);
            });
    }
}
poi in FrameStart:
codice:
    public FrameStart() {
        // SETTAGGI VARI

        // LINUX E WINDOWS
        setExtendedState(JFrame.MAXIMIZED_BOTH);

        // MAC OS X
        SwingUtilities.invokeLater(() -> {
            setResizable(true);
            setExtendedState(JFrame.MAXIMIZED_BOTH);
            setResizable(false);
        });
    }
leggendo in giro, alcuni ritengono che il problema possa essere il setSize / setPreferredSize.
appena ho il mac sottomano, provo a levare tutte le varie istruzioni che impostano le dimensioni per vedere se è quello.