the roof earth is not to be ruled out at all, in fact its nearly definatley this.......i fitted up some additions to interior lighting and had to do some wiring to the middle toplight in the starlet and the earth was fucking awful and only just worked.they get moisture and corroded slightly and make for a very very poor earth in my case. do check it,the screw that holds the light in is an earth for a start.this needs cleaning the other screw isnt an earth, then the bad bit was the plug going into the unit,this was correded and chrome plating on connections was rusty and totally shot (had to scrape away the flaked chrome/plating just to get any sort of connection) bet you this willbe ure issue !!