>>username is on the url, anyone can see it. To search specific member
directly you'll need username because it's the only unique id.
If you turn on "Show profile name as:real name" in yoursitename.com/admin/settings/user, then members will be able to see Real Names of other members, report those names to you. And you as admin can then search by real names in admin panel.
If this doesn't suit your needs, the only option will be custom code modification to make usernames visible to everybody.
Unfortunately, right now only content can be flagged. Flag option for profiles doesn't exist.