Во-первых, разберитесь с делегированием - по моему у Вас с этим проблемы. Выше описали правильные решения.
Для общего развития:
Во-вторых, обработчики могут не удалиться, например, если выполняется какое-нибудь действие на onClick. Он будет жить дальше сам по себе, т.к. фактически является замыканием, а после удаления элемента превращается в скрытое замыкание. Обработчик живущий сам по себе может вызвать утечку памяти.
В-третьих, чтобы избавиться от скрытых замыканий нужно именовать обработчики и удалять их
по именам.