As I’ve been thinking about who cast the curse, it does seem to play into Zelena’s plans. If she can get the baby without them knowing she is not a midwife, it makes things a lot easier on her. Plus, they probably figured out in the EF she wanted them to forget.
So now I’m wondering if she forced Rumple to perform the curse using Neal ‘s heart. Maybe there is a magical way to keep someone alive without a heart temporarily at least? Zelena could have magically separated them briefly. She would be getting back at him for not using her for casting the curse by making him cast it. It sounds a little crazy, but she IS crazy.
Also, while Neal is himself, he could somehow escape and send word to Hook. Hook uses the wood of the Jolly Roger in Lake Nostos as a portal to get to Emma & escapes the curse .