The 26-year-old, who has struggled with a debilitating virus in recent months, clocked one minute 13.83 seconds to beat previous world record holder Sabine Voelker of Germany by just 0.13 seconds.
For Voelker it was the second time she had missed out on gold at Salt Lake City after she also finished as the runner-up in the 500m.
The bronze went to Witty's US team-mate Jennifer Rodriguez.
But there was disappointment for Canada's Catriona LeMay Doan.
She had been hoping to complete a sprint double in her farewell Olympic appearance after winning the 500m earlier in the Games.
However, she missed out on the medals altogether, finishing back in ninth.