I think the problem is that your range includes the possibility for it to happen. Between +2000 and -2000 is your player. So, I thought that you might:
• Could create imagepoints around the player in which the enemies would be spawned.
• Could create a spawnable area, like a set of objects, and set them around the player in a way that they would not touch the player.
• Set the enemy to spawn the way it is spawnning now, BUT if they are spawned near the player, they are destroyed and then spawned again until they get it right (for that you would create a box that will follow the player everywhere and if the enemy is spawned inside that box, that contains the player, the enemy is destroyed right away and then spawned again... for a better effect you should set them invisible and delay their visibility in a way that the player cannot see the enemies being destroyed by the box)