Local hero Valentino Rossi, outside of the top ten all weekend, delivered a good start and smart first few turns to rise to sixth by the end of the first lap - then passed Spies for fifth on lap two.
But attack quickly turned to defence and the Ducati rider lost out to Simoncelli and then Spies before claiming a lonely seventh at the flag.
Rizla Suzuki's Alvaro Bautista, riding in a special chrome livery, matched his eighth place on the grid at the flag, with Aspar's Hector Barbera just holding off rookie Cal Crutchlow.
Crutchlow's Monster Yamaha Tech 3 team-mate Coin Edwards dropped from seventh on the grid to 13th due to arm pump, with fellow American Nicky Hayden
the only faller. The Ducati rider continued his nightmare luck at Misano by lowsiding out on the third lap.
Loris Capirossi's last grand prix on home Italian asphalt ended in disappointment with an early pit-stop due to chain problems being followed by a second and final trip to the pits on lap 10.
Round 14 of the world championship takes place at Aragon, Spain, on September 18.
San Marino Grand Prix:
14. de Puniet