There is no way to schedule automatic price changes. It has to be done manually. As far as searching for items that had a price revision on or before a certain date, you can set up a custom field to store the date that the price was changed and search on that. Of course, you would still have to manually revise the prices and store the date in the custom field, but batch revisions make it fairly painless.