Как использовать границы . Создайте панель с EmptyBorder, а затем добавьте в нее второй JPanel.
Не смешивайте компоненты AWT в приложении Swing. Холст является компонентом AWT. Просто используйте JPanel, у вас все еще есть доступ ко всем методам Graphics.
Edit:
Перестань называть свою JPanel Холстом. Canvas - это компонент AWT, и он работает не так, как JPanel.
Если вы не хотите, чтобы размер JPanel изменялся, задайте ему предпочтительный размер и добавьте его в JPanel, используя FlowLayout. Вы можете контролировать горизонтальные / вертикальные промежутки FlowLayout, чтобы создать вид границы.
Опубликуйте свой SSCCE (http://sscce.org) с указанием того, что вы пробовали и с какими проблемами вы столкнулись, а не с тем, чтобы мы выкладывали весь код и угадывали, в чем ваши проблемы.