Okay, I have found the problem and wanna tell you in case you stumble over this as well:
I had my origin in bottom mid of the sprite and when loading the new image, it will be set at the bottom mid again. If you load an image with uneven width into an image with even width or the other way around, the image will start somewhere at xxx.5 pixels, leading to the blur.
So if you wanna load images of different size into another image, either set up the origin at one of the corners of the sprite OR set pixel rounding to on OR always fix the position after some movement happened (not while the movement is happening obviously), something like:
(sprite.imagepoint(0)-sprite.width/2)%1 not equal to 0: set sprite x to sprite.X-(sprite.ImagePointX(0)-sprite.Width/2)%1
if your original image has even width and the origin point is at bottom middle.