Хм как-то всё скомкано... Но всё-же стоит вычислять anglePast при нажатии кнопки, имхо подписываться лучше на MOUSE_MOVE, angleActual нужна как локальная переменная, не надо её хранить. Почему вы не берёте координаты на прямую у объекта? Что если он будет смещаться во время выполнения?
Обработчик будет выглядеть как-то так:

Код AS3:
function mouseMove(e:MouseEvent):void {
var currentAng:Number = Math.atan2(mouseY - obj.y, mouseX - obj.x) * 180 / Math.PI;
obj.rotation += currentAng - oldAng;
oldAng = currentAng;
}
Обратите внимание, что вы не верно назначили параметры функции Math.atan2(y,x).
Если уж пишите в кадрах, не перемешивайте объявления функций с остальным кодом, вымораживает такое наблюдать, да и лучше не пишите код в кадрах вообще.