Your definition of "old" customers are those with no transactions for upto 4 years.
Look for persistent opening balances that have not been adjusted too in a long time.
1. check the debtors_master for full list of customers / suppliers.
2. check the debtor_trans for their old transactions to start with
3. then shortlist the ones that do not appear from a date 4 years ago
4. check if they appear in any of the various voucher types and keep only those which do not appear after a certain date four years ago.
5. Now these customers are in the crm_* tables and in the debtor_master and should not be in your recent debtor_trans table.
6. Copy these debtor_master and crm_* entries into an archive first
7. Now go ahead and delete the specific entries in their current db tables.
Many other tables like voided, gl_trans, cust_branch, etc., too can possibly sport remnants of such customers' transactions.