Use the job's cancellable for the I/O APIs
EogJob
has a cancellable, and the loading loop in eog-image.c
only uses it between calls to the functions in librsvg and gdk-pixbuf that actually do the work of reading the image. That code should pass the cancellable to those functions, so they can exit early if possible.
(If everything ends up working well for this, it will mean less delays when quickly switching between images in an image collection.)