BGE: How can I activate an actuator multiple times during a script?
yeah that is an issue when using Logic Nodes. I think some of them can only be activated once per frame.
There is however a solution to your problem and its this:

import bge

cont = bge.logic.getCurrentController()
own = cont.owner
scene = bge.logic.getCurrentScene()

own.worldPosition = [4,0,0]
scene.addObject('NameOfTheObjectToAdd', own)
own.worldPosition = [-4,0,0]
scene.addObject('NameOfTheObjectToAdd', own)