The Product Expiration extensions provides the option on the product edit page to set a date where a product will be disabled and no longer available to purchase at your store. A cron runs every 5 minutes to check for expiring products, and changes their status to disabled.