Replace the usages of Any with Contains in your query. eg:
searchTerms.Contains(c.Email)
This should get the result you’re looking for. It looks backwards, but it’s correct- it’ll generate an IN operator for each field inside a Contains with all the elements in searchTerms.
The AddressLine1 part won’t work this way- you’ll have to loop-generate the comparisons yourself with
c.addressLine1.Contains(...)
Something like PredicateBuilder can be helpful for this.