The Cardinals, who had made their best start to a season in 38 years, arrived in St. Louis as one of the National Football League's three unbeaten teams but could manage just a 35-yard Jay Feely field goal against their West division rivals.
At 4-0 the Atlanta Falcons and Houston Texans are now the only teams without a loss while the Rams improved to 3-2.
Bradford completed just 7-of-21 pass attempts for 141-yards but two of the completions were for touchdowns, including a fourth quarter 51-yarder to rookie Chris Givens that put the game out of reach.
A ferocious Rams defence made Kevin Kolb miserable, sacking the Arizona quarterback nine times. Kolb has now been sacked 17 times in two games.
"The defence has been doing it all season, they kept us in this game," Bradford told reporters.
"We were able to make enough plays, a big one in the fourth quarter on third down, to put us up 14 and we got out of here with the win."
The Rams came out firing with Bradford completing three-of-four passes, including a 44-yarder to Danny Amendola, to set up a seven-yard strike to Lance Kendricks for the first half's only touchdown.
Amendola, who ranks second in the NFL in receptions and is Bradford's favourite target, left the game later with a suspected broken collar bone.
The Cardinals answered with a Feely field goal on their first possession but in the second quarter Rams rookie kicker Greg Zuerlein, who is a perfect 13-of-13 in field goal attempts, booted a 53-yarder to send the home team into the intermission up 10-3.
"Obviously we started great, had a really fast start, went down and scored on our first drive and just never really got back into our rhythm," said Bradford.
"But we got the win and that's all that matters.
"I think we're finally on the way up."
Neither Kolb nor Bradford, who threw a career worst 11 consecutive incompletions, were able to get their offences into gear until the final quarter.
Bradford ignited the crowd when he spotted Givens sprinting down the sidelines and hit him with a pinpoint pass to take control of the contest.
The Rams defence did the rest, shutting down the Cardinals, who twice worked the ball down inside the St. Louis 15 but came away with no points both times.