Mine sunroof was VERY slow and I cleaned the junk with a cloth and WD-40. That was 4 years and still running smooth. You reminded me to the clean it again.
I have bunch of different grease and not sure why I used WD-40 but I thought it won't leave a residue and leaves a thin layer of lubricant. Any other oil should work too. I was thinking grease may collect debris.