The long and the short is yes - you would need to go into each report and filter out those that are defunct so that they don't appear on your active roster/list.
I would agree with your sentiment that deleting is not the right course of action, but I will provide a 3rd option that instead of deleting them hide them via security. So for all of your Active roles - change the View settings so that they cannot see defunct records. You could reserve that for only Admins or make a special role that you could put yourself into if you ever needed to see them/access them.
This has the advantage the for most purposes they're effectively gone from the interface but still accessible if you ever need them. This would also alleviate having to go into each report to hide them and remove any future issues with other filters. Just another idea.
------------------------------
Chayce Duncan
------------------------------