My 03 just began to have this weird noise after startup couple days ago. First time. I took the starter off, yeap, it's damn dirty. I took it apart and thoroughly cleaned it up, put grease on, and assemble together. After put it back, wow, it sounds like a new starter. Thanks to all you guys' post here.
By the way, I found that from 05 MDX, although it's the same starter, there are 2 new gaskets to seal the starter head. I asked around the dealers, none of them stock these gasket and it's $10 each. I just used the weather strip from Home Depot. Hopefully it will seal the gap and keeps dust/sand from entering again.