I have a 1985 Chevy Caprice, with under 60,000 miles, bought a new battery, new alternator, cleaned the ground wire, and it still won't hold a charge. It'll start if jumped, but won't restart the next day unless jumped. I have no idea why it won't hold a charge.
There is a procedure for finding a battery draw like that.
You will need a digital ammeter and a jumper wire with clips on the ends to do this.
First rig any door switches so you can have a door open without triggering the interior lights and unplug the hood light. Remove one battery cable and attach the meter in series between the battery cable and battery post. Take the jumper wire and also attach it the same way. Leave the jumper wire on for at least 10 minutes to expire all the automatic timers. Now remove the jumper wire and read the meter. Anything over 50ma is too much draw. The way you locate this is to start removing fuses one at a time until the meter drops to normal level. This will be the circuit with something staying on. Determine what components are part of that circuit and check them individually until the problem is isolated.