McKinnon gave the Eagles (3-1, 2-1) an immediate lift when he replaced starter Ezayi Youyoute with the Bulldogs (4-1, 2-1) leading 10-7. McKinnon rushed 14 yards on his first play and scored on a 41-yard run three plays later.
Lavelle Westbrooks' 72-yard interception return put Georgia Southern ahead 21-10 at halftime. The Eagles, who won their 13th straight at home, held Samford without a first down for 24 minutes, 36 seconds, starting 8:25 before halftime.
After Samford made it 21-16 in the third quarter on Jaquiski Tartt's 80-yard return of a fumble, McKinnon's 67-yard burst gave Georgia Southern a 28-16 lead.
Dominique Swope added a 40-yard touchdown run in the fourth. He had 133 yards on 21 carries.