I'd try just cleaning the contacts of the relay first, they may be oxidized because of lack of use. Don't use anything too abrasive; the contact points usually have a thin plating, and once it's gone they will get bad again very quickly. For similar contacts, I use some rough (hard) paper dipped into isopropanol - put the sheet between the contacts, gently push them together and pull the paper out. Repeat until the paper doesn't get dirt marks anymore.
Your theory is possible as well, but I suppose if the relay operates at all, the rest of the circuitry would be OK. Do check for obvious bad solders, though.