This seems like a bug. When adding an image into the visual editor, WordPress automatically makes it into a link. If you are in the visual editor and try to turn the image into your own link, it doesn’t remove the default link, it just encloses it together with the image in another <a>
tag so you get something like:
<a href="desired link"><a href="default link"><img src="your image" /></a></a>
The new link does save, but the stacking order makes browsers direct to the link closest to the <img> tag.
Best way to sort it out is go to the HTML editor and remove all the <a>
tags surrounding the image, and then the visual editor will work normally.