Ah...
You could make a workflow continually revert the customer status back to prospect until the renewal date changes. So if an opportunity triggers a status change, but the renewal date is in the past, then revert to prospect. You could also/alternatively use the "Date of Last Order" and/or "Date of Last Sale" fields in your criteria.
Otherwise maybe create a new status like "CUSTOMER-Out of Contract", which covers those with a past subscription.