I have learned to avoid the ultra-cheap Harbor Freight lights and now use stainless-steel units from Lowes, etc. The price difference isn't much, and you will get more years use, especially if you install better batteries.
For the batteries, consider 'higher-quality' to mean nickel–metal hydride with higher mAH rating over the NiCad's that usually come with low-cost solar lamps. This added capacity means your piece will stay lit thru out the night.
See if you can seal all openings, it is the all-pervasive alkaline dust that corrodes terminals and kills electronics. Also, I have had good success with Cramolin on battery contacts. I think it is now called DeoxIT.