Other mistake: At the end of the episode, when Aurora tells Emma and Snow about Henry in her dream, she says that he said his name was Henry, but he never said his name. He just said, "Don't be scared."
Other mistake: In the end credits, Michael Coleman, who plays Happy, is wrongly billed as "Micahel Coleman." (00:41:00)
Answer: He knows who she is because he knows that the fairy tales are true. He was also shown to sneak out to go see Emma or someone else. Sometimes he succeeded, sometimes he didn't. This is how he knew to look for her despite his strict mother.