Have you checked if the center of your crosshair image is exactly in the center of the screen?
If you are starting from the default First Person Shooter template, the HUD blueprint draws the crosshair at half the width and height of the screen. But, this is referring to the top left corner of the crosshair image. If you want the center of the crosshair to be in the center of the screen, you need to offset it by half the width and height of the crosshair image.
In the case of the Default First Person Shooter template, since the crosshair image is 16x16, you need to offset it up and left by 8 pixels.