Peerman finished with 100 yards rushing, and Jordan Palmer completed 10 of 14 passes for 115 yards and two touchdowns for the Bengals (3-2). Starting quarterback Carson Palmer played for one possession, which netted a field goal.
Colts quarterback Peyton Manning didn't play, and most of Indy's starters took the night off. Curtis Painter got the start and completed nine of 20 passes for 114 yards. Backup Tom Brandstater completed 10 of 18 passes for 177 yards and three touchdowns, all to rookie Brandon James.
It's the sixth winless preseason in Colts history.
Mike Nugent opened the scoring with a 52-yard field goal, capping a nine-play drive for the Bengals. A key play was a 12-yard completion from Palmer to Chad Ochocinco on a third-and-4 from the Cincinnati 49.
The Bengals got a short field on their next possession after Quan Cosby returned a punt 28 yards to the Indianapolis 42. Dave Rayner ended it with a 39-yard field goal to give Cincinnati a 6-0 lead.
The Colts put together their first threat of the game in the second quarter. A quick pass from Painter to Blair White on a third-and-1 turned into a 52-yard catch and run. Adam Vinatieri kicked a 23-yard field goal to put the Colts on the board with 4:32 left in the first half.
White finished with seven catches for 132 yards.
Vinatieri's 36-yard field goal tied it at 6 with 53 seconds left in the first half.
Cincinnati opened the second-half scoring with the long touchdown run by Peerman. He burst up the middle and got loose down the right sideline on a second-and-10, just as the relatively quiet Indianapolis crowd started getting into the game.
On Cincinnati's next possession, Jordan Palmer threw a 17-yard touchdown pass to Jerome Simpson to give the Bengals a 20-6 lead.
Brandstater tossed a perfect pass over a defender to James for a 26-yard touchdown that cut Cincinnati's lead to 20-13. The two connected again on a 23-yard TD pass, and then on a 2-point conversion pass to cut Cincinnati's lead to 23-21 with 6:28 to play.
Cincinnati scored on its next offensive play as Palmer fired a 50-yard touchdown pass to Dezmon Briscoe to push the lead back to 30-21.
Brandstater rallied the Colts again, finding James in the end zone for the third time, this time from 4 yards out, to cut Cincinnati's lead to 30-28 with 1:39 to play.
The Colts tried an onside kick, but Cincinnati's Jordan Shipley recovered at the Indy 41. Indy stopped the Bengals and got the ball back at its 12-yard line with 29 seconds to play, but didn't have enough time to get back into scoring range.