1) вы должны установить правильные LayoutManager ,
2) для большого количества изображений в JLabel будет GridLayout лучших вариантов, в случае, если вы хотитечтобы увидеть все изображения на одном JPanel
3) используйте CardLayout , если вы хотите увидеть каждое изображение отдельно
4) возможно, нет необходимости повторного создания
JLabel jLabel = new JLabel(new ImageIcon(macthedImages[i]));
только для установки
jLabel[i].setIcon(macthedImages[i]);
5) возможно, поместите JPanel в JSCrollPane
6), если вы добавляете / удаляете JCOmponents во время выполнения, которое у вас естьпозвонить
revalidate();
repaint()// sometimes required