Dejo 2 ejecutables, uno de GM8 y otro de GMS para vean el problema.
En GM8 al salir el puntero de la ventana el sprite continua siguiendolo por el borde, mientras que en GMS se detiene. Como se podria hacer en GMS lo que hace GM8
El codigo es el mismo en ambas versiones:
[gml]
draw_sprite(spr_cursor, 0, median(0,mouse_x,room_width), median(0,mouse_y,room_height))
[/gml]
Prueba con las funciones display_mouse_get_
El problema es que tendrás que hacer algunas operaciones para mapear las coordenadas de la pantalla a coordenadas de la room.