Also contains spoilers from episodes after “The Shepherd”.
Remember what Henry said? “He doesn’t remember, thus the curse has yet no effect on him.” (something along those lines) I think that the mobile triggered something, not exactly a memory, but enough so that when he saw the wind mill, the curse took effect.
I think that Rumple wouldn’t have minded if David remembered, but he can be a patient man (not always, I know) and so he’ll wait till he remembers sometimes else. I would guess that only David remembering wouldn’t have any effect on the curse. MM and Emma probably wouldn’t believe him at that point and he would’ve ended up in the closed ward or even dead.
At that point of the storyline it would’ve been too early for anyone to remember and Emma to believe them. We saw that, the next episode with Graham.
I believe that for the curse to be broken every story sort of needs to get right on track. Cinderella already got her happy ending, Graham also got the ending he was supposed to have (unfortunately, but he did). If David&MM had come together that night, maybe Kathryn’s path would’ve been alterned? Although, now she’s missing without anyone knowing why, so maybe it’s not the best explanation.
That’s it at the moment, lost my train of thought. It’s 7:45 am. ><