We've stayed at the Grand and at DLH. With a 3 year old, I'd pick the DLH (and it is cheaper). The Grand is beautiful and it is closer to main gate & Downtown Disney, plus has the entrance to DCA. But the rooms are small, and the DLH has more Disney for a little one. Even at 11 and 14, my kids prefer the DLH (and we will be staying there in April). Plus, the DLH is recently remodelled.
Even though the DLH is farther, it's still close. And DLH guests can use the DCA entrance at the Grand. I don't mind the walk at all -- though with a 3 year old, I'd just be sure to have a stroller at either hotel and for the parks.
One thing we really like about the DLH is that it is closer to the monorail. We try to get the first monorail and arrive in Tomorrowland, especially for early entry -- we can do all the rides that get crowded later on in Tomorrowland and Fantasyland. This is especially great if you want to do Nemo. Then we try to get to the other side of the park and hit Pirates and Haunted Mansion right after rope drop. The DLH also has Goofy's Kitchen, which we loved as a character meal.
The Grand really did a nice job when we stayed there for DD2's bday. We didn't order anything special, and we weren't staying concierge, but they had balloons and autographed pictures at check-in, and also sent up towel art and a collectible Disney figurine! And at Goofy's they brought cupcakes with candles and sang.
Anyway, for a 3 year old, DLH for sure IMO. Have fun!