Blanco's bunt escaped first-baseman Dylan Moore's grasp as pinch-runner Samad Taylor raced home with the game winner.
After the Mariners scored six unanswered runs to take a 6-5 lead in the top of the inning, Salvador Perez tied the score with a sacrifice fly, his fourth RBI of the game, pushing Taylor to third ahead of Blanco's game winner.
Julio Rodriguez drove in four runs as Seattle spoiled Brady Singer's no-hit bid.
Singer was perfect until issuing a four-pitch walk in the fifth and surrendered his first hit to Dominic Canzone with two out in the seventh. He pitched 7 1/3 innings, allowing two runs on two hits and a walk, striking out eight.
After driving Singer from the mound in the eighth, Rodriguez delivered a bases-clearing double as the Mariners scored four in the eighth, cutting the deficit to 5-4.
Austin Cox walked two of three batters faced in the ninth before Josh Rojas' two-out RBI single tied the score. Rodriguez followed with an RBI single for a 6-5 lead.
Nick Wittgren (1-0) recorded two outs for the win as Matt Brash (8-4) surrendered two ninth-inning hits for the loss.
Perez clubbed a three-run homer 429 feet to center as Kansas City grabbed a 3-0 lead in the first.
Maikel Garcia singled leading off the frame, extending his career-best hitting streak to 16 games, a club record for rookies.
Kansas City added to its lead when Witt's sharp liner escaped right fielder Canzone, rolling to the fence for an inside-the-park home run, the Royals' first since August 9, 2019.
Witt collected four of Kansas City's 13 hits for his 38th multi-hit game. He is hitting .417 with 21 RBIs in 20 games since July 22.
A bases-loaded walk to Garcia in the sixth expanded the Royals' advantage to 5-0.
Mariners starter Logan Gilbert allowed four runs on seven hits and two walks in 4 1/3 innings, his shortest outing since a 9-4 loss at the Los Angeles Angels on June 11.
Seattle has lost three straight since a season-best eight-game winning streak.
—Field Level Media