Вообще не силен в рисовании в канве джавы, но попробую предположить.
Перегруженный метод paint у вас перегружен для всего окна, а не для белой панели - вот крестики и привязаны к окну. Обычно если вам нужно рисовать в каком то компоненте - то делается свой компонент-наследник от какого нить Plane, Panel, Button на крайняк, и у него перегружается уже paint. Тогда вся отрисовка будет происходить в рамках этого объекта.
Это что касается выхода за белую область.
Если же вы хотите, чтобы при изменении размера белой области ваши метки всегда оставались в той же ОТНОСИТЕЛЬНОЙ позиции - то и надо считать относительные координаты. Т.е. вместо g2.translate(target.x+50, 100+target.y); должно быть что то вроде g2.translate(0.5*width, 0.5*height);. где 0.5 - относительные координаты, width, height - размеры канвы.