Deleting objects with coredata is pretty quick. I would personally go through and delete all of the objects attached to my event and then add the new ones.
You could also take your approach and infrequently go through and remove all images without any events. This only becomes problematic if, in the future, images can exist without an event (say you create a new type of data that wants photos). It really is not time or memory intensive.
It is a good idea to keep your database clean, otherwise you could run into complications in the future. Any effort you put into it now generally benefits you in the future. If you do not need an object anymore delete it somehow.