How to share 1 animation across multiple sprites?

I have a level editor with an animated sprite on a side bar. I select that sprite then click on my level map to place the selected sprite into the level. My problem is that when I place the animation onto the map, each animation starts at a different frame which creates ugly seams when for example placing a seamless water animation, as seen below:

Here you can see my code:

sprite = MySprite::create();
auto actionToCopy = selectedTile->getActionByTag(ANIM_ACTION_TAG);
auto animAction = actionToCopy->clone();
sprite->runAction(animAction);
sprite->setPosition(pos);
this->addChild(sprite);

So my issue is that each placed sprite starts on a different frame. Is there any way for all of these sprites to share the same instance of an animation? I tried omitting the action->clone() step and just directly copied the action but that caused errors where all the animations would stop as I placed a new sprite. Is there perhaps a function that could set the first frame of a newly placed sprite to the current frame of an already placed sprite? Or maybe a way to reset all the sprites to their first frame when I place a new sprite? Any ideas?