CHICAGO -- Miguel Gonzalez waited almost 11 months between victories.
"It's been awhile," Gonzalez said. "It's a blessing."
Gonzalez (1-1) subdued one of the hottest-hitting clubs in baseball when his teammates needed it most. The 32-year-old veteran limited the Nationals to one run on three hits in six innings for his first win since July 15, 2015.
Melky Cabrera went 2-for-3 with two doubles, two RBIs and a run to lead Chicago at the plate. Brett Lawrie added an RBI double for the White Sox, who scored all of their runs in the first inning.
In salvaging the finale of a three-game series, Chicago (30-30) snapped a five-game losing skid and won for only the seventh time in the past 27 games.
"We got (timely hitting) in the first inning," White Sox manager Robin Ventura said. "We had some opportunities, and some guys got some hits. That's the kind of boost you need early on."
Daniel Murphy hit a fifth-inning solo homer for the Nationals. Washington (36-24) managed one run on five hits after breaking out for 31 runs in its previous three games.
"We hit some balls hard," said Nationals manager Dusty Baker, whose team finished a nine-game road trip with a 6-3 record. "They just didn't fall tonight. We had some good at-bats."
The Nationals could not solve Gonzalez, who was relegated to the bullpen a week ago but returned to the rotation after left-hander Carlos Rodon complained of neck discomfort. Gonzalez retired 12 batters in a row from the first to fourth inning, and he did not issue a walk for the third time this season.
White Sox catcher Dioner Navarro said Gonzalez spotted his fastball well throughout the night.
"We needed a great outing from Miguel," Navarro said. "Our bullpen (has been) battling through some stuff here lately. He did a great job. He gave us six strong innings, and the bullpen came in and did their job. It felt really good."
Meanwhile, Nationals left-hander Gio Gonzalez (3-5) found his footing after allowing three of the first five White Sox batters to score. Gonzalez recovered for a seven-inning performance in which he allowed three runs on five hits. He walked two and struck out 10.
Baker credited his pitcher with staying mentally strong despite a hard-luck start to the game.
"A line-drive double play would have gotten him out of that (first inning)," Baker said. "He bounced back big time. He buckled down and kept us in the ballgame. He didn't really have any stressful innings other than that first inning."
White Sox right-hander David Robertson pitched a scoreless ninth inning for his 14th save. Left-hander Zach Duke and right-hander Nate Jones combined with Robertson for three scoreless innings of relief.
Robertson allowed two baserunners with two outs before retiring Murphy on a long fly ball to left field.
The White Sox opened the scoring with a three-run first inning. Cabrera drove in a pair of runs with an opposite-field double that skipped beneath the glove of diving center fielder Michael Taylor. Lawrie followed with a double down the left field line to score Cabrera.
Murphy lofted a home run over the right field wall to cut the deficit to 3-1 leading off the fifth inning. Adam Eaton climbed the wall to attempt to rob Murphy of his 11th home run, but the White Sox right fielder could only watch as the ball drifted several feet over his head and landed in the Nationals' bullpen.
The Nationals threatened to rally in the sixth inning, but White Sox shortstop Tyler Saladino fielded a ground ball in the hole threw out Jose Lobaton at home plate.
"It ends up being the right play and the one that really saves us in the end," Ventura said.
NOTES: The White Sox signed 1B/DH Justin Morneau to a one-year, $1 million contract for the rest of the season. Morneau, 35, is recovering from offseason elbow surgery and does not expect to be available until around the All-Star break. He hit .310 with three home runs and 15 RBIs in 49 games with the Colorado Rockies in 2015. ... Nationals OF Ben Revere received a routine day off for the finale of a nine-game, 11-day road trip. ... The White Sox designated RHP Mat Latos for assignment and promoted RHP Tyler Danish from Double-A Birmingham. Latos, 28, became expendable after surrendering 29 earned runs in his past 36 innings. He was 6-2 with a 4.62 ERA in 11 starts. ... Nationals C Jose Lobaton made his first start since June 3 and went 1-for-3 in place of C Wilson Ramos, who had the day off.