The simplest solution is not to do it and keep your serial numbers as simple serial numbers.
If you must have this, then the approach I can think of is to create a script that runs when the file opens. It can compare a date stored in a field against the current date to determine if the year has changed. If so, then it can use Set Next Serial Value to reset the serial number field back to one.
I do the same thing for uniqueID's on raw material tracking. As I thought about how to do it, I realized that it was just easier to include the update in year end maintenance of the Dbase than to automate it.
On the first day back of the new calendar year, I have a "to do" list which includes going into the UniqueID serial and changing the "WS-2008xxxxxx" to "WS-2009xxxxxxx". It takes less than a minute a year so I didn't bother trying to automate it further. If you have enough digits, compared to the number of projects you do in a year, you won't have to worry about overwriting the year holder digits.
Phil is correct, the whole approach probably isn't needed. I've used it when fishing for records to archive, but I'm sure there would be another way to do that step. For myself, I leave the following "xxxx"'s the same so that I have an incremented ID# as well as a clue when the material came into the building...but then again, I could find that other ways as well.
Thank you very much. This really helped me. I found a great script that helped me.