My room mate plays a solid grundy, and I feel I'm forced to play the walking corpse game to get ANY kind of big damage. I can do ok by staying out of walking corpse range and trying to catch him with low chains at that sweet spot, but eventually he learns that's what I'm doing.
You can get away with playing the low chain game and spending your meter on it for extra damage while avoiding his swamp hands from a distance, but eventually he's going to try to get in. And eventually, he will. My biggest problems with grundy are d2 and walking corpse. If you can get a jump on his walking corpse you can go for the 113 which will blow up walking corpse AND his cancel options. The problem is 113 has to be timed right before he inputs walking corpse. If he doesn't cancel into anything, b2u1 and b12 will work to blow up walking corpse.
The safest option, to me, is to go for mb b3/f3 to blow up walking corpse. Once again though, if you time it too late... walking corpse will beat the mb b3/f3. I wish this game was consistent, but that's what we have to work with.
I saw you say j1 on jump in can beat d2 sometimes. I use j1 a LOT and d2 usually wins way more than j1 wins. I think the only time j1 wins is if the grundy player mistimes their d2. I DID find, however, that j3 beats Grundy's d2 pretty consistently as long as you time it right. J3 seems to have hella priority on it, but it has a short range and a short active frame duration, so timing it perfectly is very important. I wanted to start playing with that a bit more.
In summary, run away and play with low chains while staying out of range of walking corpse and avoiding swamp hands. You can chip away at him little by little, and if you want to MB your low chain for extra damage... even better. But when he gets in you HAVE to play the walking corpse game better than he does. When grundy is on the ground, a well timed 113 in his face will blow up walking corpse and his cancel options, but if you're not up on the timing, mb b3/f3 is your best option for blowing it up. Hit and run, hit and run, hit and run. Load your trait at every opportunity and hit him with a 2~low shot/21~low shot mixup for big damage.