In a game that saw five lead changes, the left fielder threw out Kyle Seager at the plate in the 10th inning to extend the game, which the Royals won 6-5 in the 12th inning over the Mariners.
Kansas City (83-73) moved to three games back of idle Cleveland in the AL Wild Card race with six games remaining.
Salvador Perez, who put the tag on Seager off Gordon's throw, belted two RBI on three hits, including the go-ahead double in the 12th inning to score the left fielder.
It was the second major league start for Yordano Ventura, who began with a bang as he struck out the side in the first inning. He finished with 5 2/3 innings, allowing one run on two hits while striking out six batters.
Kansas City used seven pitchers overall, including Greg Holland, who matched the franchises single-season record with his 45th save.