Your problem is entirely with the CANBUS system. Because it's not a steady signal (I forget the frequency, but it's only on about 80% of the time), you're putting your relay through a heck of a workout. The solution to this is to use a capacitor to smooth the pulsing out. I had found this...