contacts where name = email
Welcome to S.E. and CiviCRM. Having Contacts without First and Last is quite common and is often done intentionally to get Contacts signed up for Mailing Lists. If a contact has no First or Last then it is correct that the email shows as their Display Name and their Sort Name.

That said, if you really want to find and destroy/cull, then Search Builder (under Search) is your friend as it offers a Filter for 'IS NULL or IS Empty' hence you should be able to do something like the following

Individual > First Name > Is NUll (or empty)
Individual > Last Name > Is NUll (or empty)

From the Actions tab you can then Export them, and then Delete them