Palmer hit Chad Ochocinco with the game-winning throw and also tossed a 10-yard touchdown pass to Laveranues Coles.
Shayne Graham had a 29-yard field goal for the Bengals (10-5).
Palmer finished with 17 completions in 25 attempts for 139 yards and an interception.
Cedric Benson ran for 133 yards for Cincinnati.
Kansas City (3-12), which has lost five straight games, scored on a 20-yard Matt Cassel-to-Tim Castille pass and a 30-yard field goal by Ryan Succop.
Copyright 2009 by United Press International.