рони посоветовал использовать метод bind, теперь я реализовал все обработчики через него, вышло примерно так:
вместо
.mouseenter(function () {}
получилось
.bind("mouseenter",( function () {} )
При обработке клика в ячейку я делаю следующее
$(".free").unbind();
Как я понимаю, при нажатии на кнопку отмена нам необходима снова вызвать bind, но помимо обработчиков нужны ведь еще и сами действия, т.е. я принципиально не понимаю разницы между off и unbind.