Shields (9-8) tossed seven shutout innings before finally allowing a run in the eighth, yielding four hits and four walks while striking out seven.
The contest was scoreless until Kansas City exploded for five runs in the top of the eighth, capped by Gordon's two-out, bases-clearing double off Caleb Thielbar.
Billy Butler homered for Kansas City, which claimed the opener of a three-game series.
Jared Burton (2-8) was hung with the loss for the Twins after starter after starter Kevin Correira had allowed six hits over seven scoreless innings.
Brian Dozier supplied Minnesota's only RBI.