Bueno... Es algo raro lo que pides, pero posiblemente esos cursores, si no están asociados a ningún tag se recarguen cada vez que los necesites y sea lo que funciona mal...
Se me ocurre hacer una especie de pseudo precarga de cursores, asociándolos a elementos que incluso estén ocultos...
<div style="position: absolute; top: 1px; left: px; width: 1px; height: 1px; cursor: url(tuCursor.ani)"></div>
Con esta etiqueta se queda el cursor que tu quieres en memoria y se vería con el cursor en el pixel superior izquierdo y nada más... Tal vez de esa manera se vea bien en otro sitio...
Tan solo es una idea, por lo demás puedes asignarlo a los eventos que quieras tal como lo hacías al principio...
Saludos