Have you had the cap tested? Pretty much every old one I test doesn't stand up to the rated pressure, which means it slowly boils off the coolant. They're only a few quid new and if you don't have a tester and there are no obvious leaks, an the cap is old, I'd throw a new cap on...