Batteries just don't last. After about a year of constant use, they start degrading significantly, and need to be replaced. I posted over in another thread about what I did. Basically find all the "bad" batteries in your store, it could be a few, or a lot. And then, get rid of them! It could be a process to take a look at every battery, but your job and your team will thank you when those bad batteries are in a box out the door.
What your STL said is not true, you don't have to send them in, they can just order new ones. The best thing to do is label every battery with the date you got them, after a year or two, look in to getting them replaced. I put together a proposal for getting new batteries and how it would help with productivity based on the amount of time wasted getting new ones or waiting for a reboot. I had 25 batteries in my drawer two weeks later right before Black Friday. 😉
Also, that WD-40 idea is NOT a good idea. If he is referring to CLEANING the contacts, the best solution for that is rubbing alcohol. WD-40 doesn't CLEAN anything, it just leaves a residue. It's very unlikely that battery contacts would result in it draining faster, the battery just wouldn't work.