Danny Duffy pitched into the seventh inning to 4 victory over the Oakland Athletics.
Duffy (4-8), who gave up four hits and three runs over 6 1/3 innings, earned his first win since July 31 at Cleveland. The rookie southpaw lost his previous four decisions over a six-start span.
Francoeur and Salvador Perez each had three hits with an RBI and two runs scored for Kansas City, which will try for the three-game sweep Wednesday afternoon.
Gio Gonzalez (12-12) was touched for 10 hits and seven runs -- six earned -- over five innings to have his three-start winning streak snapped.
"I threw some good quality pitches...but they scored some runs off me," Gonzalez said.
Oakland loaded the bases with two outs in the ninth and Brandon Allen scored on a walk to Pennington. Joakim Soria, who entered the game with two on an nobody out earlier in the frame, then retired Hideki Matsui on a ground ball to notch his 26th save.
Hosmer and Francoeur hit back-to-back homers to start the second inning, and the Royals scored two more in the frame, one on an infield hit from Alcides Escobar and another on a groundout from Alex Gordon.
Weeks doubled in a run in the third, and Pennington followed with an RBI single to left.
The Royals tacked on three in the fifth, on a groundout from Johnny Giavotella, a double from Perez and a bases-loaded walk to Gordon.
"Our offense did a great job...off of a guy we think is a pretty darn good pitcher," Royals manager Ned Yost said.
Weeks' infield hit plated Michael Taylor in the seventh inning. Taylor, a fifth-round draft choice by Philadelphia in 2007, recorded his first major league hit, a single, earlier in the ninth.
The season series is even after eight games...Weeks has hit safely in 13 of his last 14 games...Hosmer has a 15-game hitting streak on the road.