The Tigers, playing their first game since Miguel Cabrera's season-ending biceps injury, won for just the fourth time in 11 games.
Leading 2-1 after seven, the Twins failed to add an insurance run in the eighth, stranding Eduardo Escobar after a one-out triple, and it came back to haunt them.
With one out in the bottom of the inning, John Hicks, Niko Goodrum and Grayson Greiner hit consecutive singles off Addison Reed (1-5) to tie the game. Jose Iglesias popped out, but Reyes grounded an RBI single to left.
Reyes, a Rule 5 pick, started the night hitting .196 with four RBIs in 30 games.
Leonys Martin followed with an RBI single and Reyes scored on right fielder Robbie Grossman's throwing error to make it 5-2.
Joe Jimenez (3-0) got the win with a scoreless eighth. Shane Greene pitched the ninth for his 16th save.
Twins starter Jose Berrios allowed one run on seven hits and a walk in six innings. Detroit's Matthew Boyd gave up two runs on three hits and two walks in five innings.
The Twins scored twice before Detroit recorded an out in the first inning. Boyd hit Brian Dozier, Eddie Rosario doubled and Escobar hit a two-run single.
Goodrum made it 2-1 with a second-inning homer, and the Tigers had runners on second and third with one out in the third before Berrios struck out Nicholas Castellanos and Jeimer Candelario.
Dozier appeared to make a spectacular play with one out in the fifth, using his glove to scoop Reyes' drag bunt to Logan Morrison at first. The Tigers, though, challenged the call and it was overturned after a lengthy review. Martin followed with an infield single, and after Castellanos struck out, Berrios hit Candelario to load the bases.
Victor Martinez fell behind 0-2 and grounded out to end the inning with the Twins still up 2-1.
The Tigers missed another opportunity in the sixth. Hicks started the inning with a single and took third on Goodrum's ground-rule double, but Berrios struck out Greiner and Iglesias before retiring Reyes.
Twins: OF Byron Buxton (toe) took batting practice on Wednesday, while Joe Mauer (neck and head) played for Triple-A Rochester on his rehab assignment.
Tigers: With James McCann still sidelined by the flu and John Hicks moving to first base in the wake of Cabrera's injury, Greiner was the starting catcher. McCann was feeling well enough to warm up pitchers between innings and could be back on Thursday.
The teams finish their three-game series on Thursday afternoon, with Minnesota's Lance Lynn (4-4, 5.08) facing Detroit's Michael Fulmer (2-5, 4.40).