Is there a way to make Magento reindex itself so that frontend product search would work without manually reindexing all indexes?
You can setup a
cron job to do re-index automatically. Hope the following links will be helpful.
In System > Index Management if Catalog Search Index is set to Update on Save you would expect it to perform a localised search reindex whenever product details are updated.
However, in my experience this doesn't work. I'm guessing you have experienced the same.
You're best bet is setting up a nightly reindex as Su123 suggests. You can get away with only doing it on the catalog search index.
If your client is too impatient to wait til the next day for their changes to appear in the search results, then you might want to advise them to manually reindex the Catalog Search Index via the admin after they've made changes.