Updated

In what was likely his final home game as Carolina's coach, John Fox ensured he'd leave with a winning overall record.

He can thank his quarterback for his getting a long-awaited first victory.

Jimmy Clausen outplayed John Skelton in a matchup of rookie quarterbacks, John Kasay kicked four field goals and the Panthers beat the punchless Arizona Cardinals 19-12 on Sunday to snap a seven-game losing streak.

Clausen threw only his second touchdown pass of the season in his first win in eight starts. Jonathan Stewart rushed for 137 yards and the Panthers (2-12) held the Cardinals to 43 yards rushing.

Fox, in the final year of his contract, improved to 73-69 in a rare bright spot amid a miserable year.

The Cardinals (4-10) mustered 218 yards in their eighth loss in nine games. In his second start, Skelton threw an interception and lost a fumble.

Playing in front of a half-empty stadium in their last home game of the season, Clausen threw his first touchdown pass since Oct. 3, ending a streak of 202 without reaching the end zone. It came a week after he apologized for his performance to linebacker Jon Beason, only to get an earful from receiver Steve Smith for not apologizing to the offense.

The win might not be too much of a long-term blow for the Panthers, who entered the day a game worse than Cincinnati in the race to the bottom and the ensuing No. 1 draft pick; the Bengals also won Sunday.

The game served as a painful reminder of how far and how quickly these two franchises have sunk. Less than two years ago the Cardinals forced six turnovers by Jake Delhomme in a 33-13 rout of the Panthers in the NFC divisional playoffs on their way to a surprise Super Bowl appearance.

The Panthers haven't been the same since, while Arizona's demise started this year. Both downfalls can be traced to terrible quarterback play.

Clausen, who got the job after Matt Moore's struggles and then season-ending shoulder surgery, completed 13 of 19 passes for 141 yards and no turnovers. Stewart took advantage of the league's 30th-ranked rushing defense, and Carolina pounced on Arizona's mistakes.

Skelton, a fifth-round pick from Fordham who got the job with Derek Anderson (concussion) sidelined, didn't get the help he received a week earlier, when the ground game and special teams dominated in a 43-13 win over Denver.

Skelton's interception led to a TD and a 13-0 deficit. He also lost a fumble, completing 17 of 33 passes for 196 yards.

The Cardinals, who entered the day mathematically alive in the weak NFC West, got within 19-9 when Steve Breaston recovered teammate Tim Hightower's fumble in the end zone with 5:41 left. The 2-point conversion failed.

Arizona got a late field goal with 54 seconds left, but Carolina recovered the onside kick.

In a season of mostly misery, Carolina got off to a quick start. After fumbling on the first play from scrimmage last week, Stewart rumbled for 35 yards on the first play against the Cardinals to set up a field goal.

Leading 6-0, the Panthers caught a break when Skelton inexplicably floated a pass into double coverage toward tight end Stephen Spach that was easily intercepted by Sherrod Martin. On the next play, Clausen found an open Jeff King for a 16-yard touchdown.

Skelton, the victim of a couple of first-half drops but also shaky with his accuracy, led Arizona on a drive that ended with Jay Feely's 23-yard field goal with 36 seconds left in the first half.

It came just after Tyler Brayton batted a pass at the goal line but couldn't make a diving interception. Brayton started two days after he was fined $15,000 by the league for leveling Atlanta's Chris Owens from off the field on a punt return last week.

Brayton later recovered Skelton's fumble, forced by Greg Hardy.