Upvote:3
Flagstaff is no longer a small town. The metro area has an estimated population of over 135,000.
I suggest looking at the Grand Canyon web site and making a reservation for lodging, either in the park or outside. This includes camping. As far as activities, you may a get a beautiful clear winter day. And you may not.
You are probably aware that all tourist facilities on the North Rim, which has a different and much colder weather system, are closed.