First of all I agree with @Jonas Metzler if you don't have DDL rights you should talk to someone who is able to fix the DB structure.
This is the best way to solve your issue. However for a temporary workaround you could try to batch your IN clauses. This could help you but only little don't expect too much.
With batching I mean something like this
SELECT * FROM payment
WHERE is_deleted = 0
AND is_privacy = 0
AND ou_code IN ('A1', 'A2', ..., 'A500')
LIMIT 0, 20;
-- Next batch...
SELECT * FROM payment
WHERE is_deleted = 0
AND is_privacy = 0
AND ou_code IN ('A501', 'A502', ..., 'A1000')
LIMIT 0, 20;
Keep in mind this is quick and dirty pseudo code. There may be syntax error's but should give you an idea of what I mean