I understand why it's working that way, but how then can i accurately assess who has "expired" this way? The client wants to send emails to the "expired" members, but when they do it people get upset because they have renewed their membership.
You can automate this using CBSubs Mailer. Under Conditions for the mailer just be sure to condition it so it doesn't send if any plans are active. This removes the need to manually send emails and the need for such a filter entirely.