Thanks for your responses.
Glad to hear about item 1 . On feature suggestion 4, I think the filtering by dates would be a great addition as well for even more flexability as you said. I still think though there should be an actual status for Overdue (like Paid, Unpaid, etc) for an easy/quick view of all overdue invoices, and so clients could actually see that status of "Overdue" too as opposed to just "Unpaid".
Perhaps add in the Overdue status type and then the daily maintenance script that is run via cron could do "if today's date is past the due date for this invoice, then change it's status to Overdue (if it isn't already)". Then the client actually sees the "Overdue" status in their invoice list and on the invoices themselves, and then an admin could further filter by the dates as you said to drill down and only show invoices that are X days overdue, etc to then act according to their policies such as contacting the client, suspending manually, etc.
Thanks again.
-Mark