Kids love the railroad out of Williams. Might be worth looking into.
Booking at the Grand Village is always tough, especially without a lot of lead time. Most of the rooms at the Village are booked through Xanterra online. The least expensive are at the Maswik lodge and Xanterra will tell you they are not on the Rim. (But they are a five minute stroll from the rim, so no big deal.) Don't forget to look at reservations at the Yavapai lodges, which are also in the Village but not on the rim. They are not run by Xanterra, so many people forget to search for them. There are booked on a different site, but as I look today they have more open dates.
Hone up on your Internet booking skills. If you specify 3 nights on the Xanterra website, you are guaranteed to find nothing available. But if you start looking at single nights, you'll get a better idea of what's available. Maybe you can string a few together. And don't forget you can book, hold a room with a night's deposit, and cancel later if necessary. Also don't forget that people do cancel their reservations as dates get near. You may get lucky by revisiting those sites.
The nearest non-park lodging on the south rim is at Tussayan. Overpriced, ugly, and definitely not the "vibe" you're looking for when visiting the Grand Canyon.
Sorry if this is TMI. Lodging is a terrible ordeal at the GC unless you are quite wealthy. What makes it worthwhile is that GC is truly one of the most amazing places on the planet.
Treat them to the trio of pancakes at the El Tovar lodge. My gf and I ate there after some sunrise photography and they were some of the best pancakes I've had. Blue corn, buckwheat, and buttermilk served with prickly pear nectar.. So good!
The south rim is an absolute Disneyland zoo of crowds anytime but dead of winter, summer being the peak of the worst. The above suggestion is great and the North Rim for a much better crowdless experience. I would only ever go to the south side in winter. However with little kids the North Rim experience will be mostly lost on them. Maybe the Williams train ride as was mentioned would suit them better.You could also go to North Rim via St. George. No crowds and from there you can drive down 80 mile dirt road to Toroweep for great view of Grand Canyon. From there drive over to Bar 10 guest ranch and spend night there. Not the way most people do the Grand Canyon, but that is the point.
We took my daughter to the South Rim when she was 2 1/2 years old. She was fearless on the edge of the rim. She kept running over to the edge to throw pebbles over the side. We were petrified the whole time. We could not let go of her. The next time, when she was 10, I took her to the North Rim and she wouldn't go near the edge. She was petrified of the heights. lol
A better choice for the 3 year old might be Zion NP or Bryce Canyon NP. There is water to swim in in Zion. You could take the 3 y o up into the Narrows for an unforgettable experience. The older child would like the Emerald Pools and the hike is short enough to carry the 3 y o. Beyond Bryce Canyon is Escalante, Kodachrome Basin, Dixie Forest NP and Capital Reef NP. The Escalante area offers some off-road driving on old wagon trails too. There's Antelope Canyon near Page, Arizona. This whole area is called the Escalante Grand Staircase for the slanted, uplift topography including all of these parks and the Grand Canyon. My wife and I hit several of these spots last year in June and really had a good time doing some of the tougher hikes.
Also consider Mesa Verde near Four Corners for the cliff dwellings. The kids might really enjoy that. My daughter was fascinated with it.
Honestly the easiest thing is to stay in Flagstaff and do day trips. There are tons of things to do and see within a 2 hour or less drive.
Sedona may be good for wife and taking Schnebly Hill road down to Sedona is an easy, very scenic ride down to Sedona.