Querying an encrypted field will not return results/consistent results while running Scheduled Jobs.
The current design of Scheduled jobs is to run either as System which does not have the user session and therefore the right context or as impersonated users which do not get the context either for security reasons. Therefore Scheduled jobs framework and Column-level encryption are not compatible today and it is expected behavior. The encrypted fields in Scheduled Jobs are not yet supported.
There is no workaround for this unsupported functionality.