The curse's purpose would be significantly diminished if Angel didn't know about the happiness loophole in his soul. Say it would be smarter for a gypsy to tell Angel alot of the details about the curse, because then, Angel would be more likely to feel guilt, and safer for them, as if Angel did loose his soul, he would hunt down the gypsies. It's no surprise that Angelus first seeked out and killed Jenny's uncle, and even if Jenny never attempted to restore Angel's soul, she would have eventually been killed.
However, I do understand the flip side, that if Angel knew, that he would be smarter enough to stay away from Buffy.
Whilst I know this is really not a helpful response, in the Innocence commentary, Whedon admits that the soul thing was incredibly tweaked and last minute to make sense. It's the most frustrating thing about the Angel character to me, as the gypsies would be smart enough and tactical about their 'vengeance' towards Angel.
I think only Jenny knew about the curse in Surprise. If she knew prior, she would have made a greater effort. That's why I'm never angry at Jenny: she was in an incredibly awful situation.