No, the tap water and ice cubes in drinks in restaurants are not safe. Use bottled water even for toothbrushing. I also would avoid uncooked stuff.
The decision to take your child is a tough one. As other posters have said, there's a good bit of sitting around time involved. Depending upon when you go, St. Pete can be bitterly cold, so for simple safety's sake, you'll be stuck indoors a lot. In Moscow, we got a hotel room that was a suite, with a large-ish living room and a small-ish bedroom. That gave all of us more moving around space.
Hope this helps!
