John Skelton stepped in for the injured Kevin Kolb and threw for 282 yards and three touchdowns, and the Cardinals rallied to hand the 49ers their third loss of the season, 21-19, on Sunday.
Fitzgerald had seven catches for 149 yards, including a 46-yarder for a touchdown and a 53-yarder to set up the go-ahead score. He also had a vicious block that helped free Early Doucet on a 60-yard touchdown reception.
Arizona sacked Alex Smith five times after getting five against Dallas in its 19-13 overtime win over the Cowboys a week earlier. The 49ers (10-3) were at the Cardinals 4-yard line twice and the 6 once in the second quarter and had to settle for short field goals by David Akers each time.
Frank Gore rushed for 72 yards on 10 carries for the NFC West champion 49ers (10-3), including a 37-yard touchdown run that put San Francisco ahead 19-7 early in the second half. He passed 1,000 yards rushing for the fifth time in his career, but didn’t do much damage after that.
Smith completed 18 of 37 for 175 yards and no TDs. He lamented the missed opportunities in the second quarter and the failure to get close enough for a game-winning field goal at the end.
“We have to be honest with ourselves when we look at the film,” Smith said. “It is not something we can just dismiss and move on.”
The 49ers were without standout inside linebacker Patrick Willis, who missed the second game of his career, because of a right hamstring injury.