The Flyers (4-1) led for much of the game, but allowed Louisville (1-1) to take a 55-50 lead with a little more than four minutes to play.
Dayton rallied, however, behind Roberts, whose runner with 1:45 to go gave the Flyers a 61-60 lead. The Cardinals had a chance to take the lead moments later, but Jerry Smith missed a runner, and David Padgett couldn't hit the tip-in.
Louisville seemed to hold, as Roberts missed a runner badly. But the Flyers kept the ball alive, and it ended up in the hands of Marcus Johnson, whose putback gave Dayton a 64-61 lead with 32 seconds left. Smith then missed a 3-pointer for Louisville, and Roberts sealed it with a pair of free throws.
Padgett led the Cardinals with 14 points and Juan Palacios added 13 points and 10 rebounds, but Louisville couldn't overcome 41 percent shooting.
Louisville coach Rick Pitino worried before the game that his youngsters would be intimidated playing away from the comforts of Freedom Hall for the first time, and early on they played like it.
Dayton grabbed an early 12-point lead thanks to Roberts and poor shooting by the Cardinals. Eight minutes in, Louisville had just as many airballs (two) as baskets.
The Cardinals gathered themselves enough to keep it close, but missed a handful of point-blank looks that allowed Dayton to take a 29-23 lead into the half.