Stewart played football at his high school of Morristown West High School. He played college football at the University of Tennessee, and in 1995, he was the second pick of the expansion Jacksonville Jaguars' selections in the first round of the NFL Draft (selected 19th overall).
Stewart played solidly for the Jaguars, and still holds the franchise record for the most points in a single game (30). He also holds the Jacksonville Jaguars franchise record for the most touchdowns in a game with 5 rushing touchdowns. Both these records were obtained on October 12, 1997 against the Philadelphia Eagles.
Stewart became a free agent and signed with the Detroit Lions prior to the 2000 season. In his first year playing for the Lions, Stewart rushed for a career-high 1,184 yards and 10 touchdowns. 2 years later, he had another 1,000-plus yard season (1,021). However, he was injured and did not play in 2003, and never played again due to injuries. According to Coy Wire, Stewart's injury occurred because of a bounty system established by then Buffalo Bills head coach Gregg Williams. Coy Wire stated "I shattered James Stewart's shoulder and he never played again. I was showered with praise for that. It's a shame that's how it was. Now I see how wrong that was." .