Вы пользуетесь канвасом как хранилищем состояния — это императивный подход и от этого неудобный. Это как с JQuery, только хуже, потому что тут у вас нет селекторов. Вы не должны опираться на то, что нарисовано на канвасе. Ваш канвас должен служить просто представлением. Вынесите все ваши данные в JS в качестве массива или объекта — как вам удобно. Далее напишите код, который будет перерисовывать ваш канвас при изменении состояния. Есть два способа решать проблемы: первый — тот, которым вы пытались решить вопрос — прямой способ, второй способ — это поменять задачу так, чтоб в новом контексте проблема стала невозможной, бессмысленной, в общем перестала существовать. Если вы вынесите всю логику в JS, то вопроса «как удалить» у вас не останется.