Graham,
In the Rule Language Reference, it gives an example:
COUNT Transaction WHERE (Transaction IN Account.Transactions)
You might try to get this to work first:
1) If COUNT Contacts WHERE Contacts.EmailAddress=ThisContacts.EmailAddress > 1 Contacts.Duplicate='Yes'
I think this syntax will work but not 100% sure
2) Do a query of all Contacts with Contacts.Duplicate='Yes' . I would NOT try to have the query list all but one of them until you are able to get this process to work.
Tom