I'm not sure if you've tried the EntityQuery.CommandTimeout. Here a value of 0 means that the underlying ADO.NET Command.Timeout default should be used, and that default is 30 seconds with most providers. If the problem is occurring during a fetch, try setting that to a value in seconds that you hope is sufficient. If the timeout is occurring during a save take a look at the TransactionSettings timeout property.