MIAMI _ Jose Fernandez did what is expected of a pitcher counted on as a stopper.
The ace right-hander also had to act as the starter of a stalled offense to enable the Miami Marlins to put a stop to the Royals' nine-game winning streak with a 3-0 win at Marlins Park.
Fernandez's line-single to center in the sixth began a run of four consecutive hits off Dillon Gee in a three-run inning that ended a streak of 18 scoreless innings by the Marlins.
More important was his performance on the mound in delivering a much-needed win and ending his own three-game losing streak, the longest of his career. This was a return to vintage Jose, as he shut out the Royals for seven innings on six hits.
Fernandez's sparkling night was tempered by a possible leg injury when he threw his final pitch. As soon as he got Christian Colon swinging to end the seventh, Fernandez grabbed his lower right leg and limped slowly off the field.
That was Fernandez's ninth strikeout, which pushed his season total to 213.
When he fanned Colon with a curveball for the second out of the fifth, Fernandez tied Ryan Dempter's mark of 209 in 2000. Fernandez took ownership of the record when he fanned Alex Gordon in the sixth.
He recorded all three outs in the seventh on strikes in his best outing since July 23 when he recorded his most recent win. The Marlins were winless in Fernandez's past four starts.
"The way I always look at Jose, his stuff's good; as long as he's healthy and feeling good, then I'm confident that he's going to pitch well," Marlins manager Don Mattingly said before the game.
Fernandez, who improved to 13-7 but only 2-3 since the All-Star break, was in fine health and form until his final pitch.
Christian Yelich's two-run single produced the first Miami runs of the series and chased Kansas City starter Dillon Gee after 5 1/3 innings.
Marcell Ozuna's sacrifice fly off Peter Moylan produced another run charged to Gee. It took a nifty swim move by Martin Prado to avoid the tag by Salvador Perez and score on the medium fly.
The Royals had allowed no more than one run in seven of their previous eight games.
Shortstop Adeiny Hechavarria, who entered the game in the eighth, helped Fernando Rodney record his 25th save by making a remarkable diving grab of a sizzling liner by Alcides Escobar in the ninth.
Fernandez's hit was his second of the game. He was the only Marlin to reach base in the first five innings off Gee with an infield single in the third.
Fernandez skirted trouble on several occasions by holding the Royals to 0-for-8 with runners in scoring position.
He got himself into a major mess in the second aided by his own throwing error on a sacrifice bunt by Gee following back-to-back singles by No. 7 and 8 hitters Escobar and Raul Mondesi. Fernandez looked back the runner at third, then sailed the throw high allowing Gee to reach.
Then he bore down and got out of it. Striking out Paulo Orlando was vital to extracting himself from the bases-loaded jam. He threw six consecutive breaking balls, getting Orlando swinging on a 2-2 pitch, then got Christian Colon to ground into a force out.
The strikeout of Gordon that gave him the Marlins' season mark helped disrupt a threat after American Heritage-Plantation product Eric Hosmer notched his first hit in South Florida and Perez followed with another sharp single. A double-play grounder finished the task.
Fernandez came back strong after getting knocked around by the last-place Reds, who nicked him for five runs in four innings. It was only the fifth time in 70 career starts that he failed to make it past the fourth.
He hadn't pitched in 10 days due to being skipped in the rotation as part of the plan to limit his innings in his first full season following elbow surgery.
"You never know how that's going to react," Mattingly said. "Most guys don't mind the extra day, but when you start giving them seven, eight, nine [days off] it messes with their routine."