Update: Since around January 2018, it is now possible to search using the email parameter on Stripe. See the accepted answer.
I
Stripe now allows you to filter customers by email.
https://stripe.com/docs/api#list_customers
Map options = new HashMap<>();
options.put("email", email);
List customers = Customer.list(options).getData();
if (customers.size() > 0) {
Customer customer = customers.get(0);
...
This is important to help ensure you don't create duplicate customers. Because you can't put creating a customer in Stripe and the storage of the Stripe customer ID in your system inside a single transaction you need to build in some fail safes that check to see if a particular customer exists before you create a new one. Searching customers by email is important in that regard.