The world number one twice found herself two points from defeat in the third set against the British player, having previously trailed Watson 3-0 and 5-4 in the decider.
Then, as the 20-time grand slam singles winner has done so often in her career, the 33-year-old regrouped and hit two sumptuous forehand winners with the score on deuce as Watson served for the match.
"When she needs to hit the line or needs to hit a winner, she'll just do it, and that's what she did," a despondent Watson said after the game.
Nevertheless, the player who has won the last three grand slam titles and is bidding for a calendar Grand Slam was relieved to beat the Brit 6-2, 4-6, 7-5.
"I honestly didn't think I was going to win," she admitted.
"How I pulled through, I really don't know."
"She just did everything so well. I wasn't able to keep up. You know, sometimes you just don't have your day," said Williams, who lost in the third round at Wimbledon last year. "I thought maybe today just wasn't my day."
The result means Williams will take on her older sister Venus in the Round of 16, a five-time winner at the All England Club who booked her place in the fourth round with a 6-3, 6-2 win over Aleksandra Krunic.
This will be the 26th all-Williams matchup on the WTA Tour, but first at a major since Serena beat Venus in the 2009 Wimbledon final.
"It's unfortunate that it's so soon," Serena admitted.
"We've been facing each other a long time," said the 16th-seeded Venus.
Catch all the Wimbledon action LIVE on FOX Sports Play