Created flag for "add friend", set a View, works but there's a problem
It sounds like your view is already set up with the proper Flagged: Node relationship and "User ID from URL" contextual filter.  If you edit the view and then edit the Flagged: Node relationship, you can try checking the box for "Only display if flagged by the currently logged-in user" and see if that helps you.

Keep in mind, this method will still display people that were flagged by both Person 1 and Person 2 (common friends, in other words).  Another solution would be to have a private profile page and a public profile page, with different views on each; you might want to look into the Profile2 module.