I believe the reason your approach is not working is because it's 'picking' both sprites rather than just one. Here's how you might fix it. Let's assume your sprite is called 'Sprite'.
First create a family called 'SpawnedObjects' and add 'Sprite' to it.
Then, in your events, check to see if the newly created object 'Sprite' is overlapping any 'SpawnedObjects'. If it is, then position 'Sprite' to a new location.
This way, you've differentiated the created sprite from the already existing one. You've identified 'Sprite' as the newly created one and 'SpawnedObjects' as the existing one. Simply move 'Sprite' and it should work.
Also, if you're not already doing this, make sure it continues to re-position 'Sprite' until it finally finds a spot. Use a loop. Otherwise, it might re-position 'Sprite' once to avoid the overlap, but won't re-position it if it happens again.