Once a link to a photo has been created in iCloud, is there a way to invalidate the link & remove the photo?
If you shared the picture in an album (Photo Stream), you can learn how to do it here.

If you shared the picture alone (by clicking "Copy iCloud link"), you have to :


Go to the link on a computer, while logged in to the iCloud account from which the image was shared. 


For example https://www.icloud.com/photos/#XXXXXXXXXXX-XXXXX


Click on the three dots (upper right) > Stop sharing 




Note that every picture will expire 30 days after being shared. Also, if someone made an offline copy of the photo and/or saved it to their library, removing the share link does not claw that copy back - it only prevents new viewing.