Pedrosa passed pole sitter Lorenzo on the first corner and was never seriously challenged in the rest of the race.
Pedrosa's first MotoGP win at Jerez comes less than three months after he broke his hand in a training crash.
"I'm very happy about the performance because it comes after a difficult winter during which we couldn't test so much," he said.
"To score good results in two complicated races and lead the championship is very important.
Advertisement
Report: Pedrosa wins Spanish MotoGP
"I got a good start - not spectacular like in Qatar but effective - so I was able to take the lead."
Stoner was trying make up ground from the start, having begun the day seventh on the grid.
But his chances of a decent finish took a knock on lap three when he ended up in the gravel and was relegated to the back of the field.
By the end, he had battled his way through to 11th place but another misjudgement as he tried to pass Shinya Nakano and Chris Vermeuelen saw him end up in the gravel again.
It's so frustrating as the bike's been working so well in pre-season
James Toseland
Toseland's performance was all the more impressive as he was suffering from a chest infection, but afterwards he said he was pleased with his day's work.
"I've had easier races, I'm not too good but I want to thank the mobile clinic for pumping everything into me," he told BBC Sport.
"It's so frustrating as the bike's been working so well in pre-season - I was hoping for fifth place, better than in Qatar, but to equal that is great."
Jerez MotoGP result: 1 D Pedrosa (Sp) Honda 2 V Rossi (It) Yamaha 3 J Lorenzo (Sp) Yamaha 4 N Hayden (US) Honda 5 L Capirossi (It) Suzuki 6 J Toseland (GB) Yamaha 7 J Hopkins (US) Kawasaki 8 A Dovizioso (It) Honda
MotoGP championship standings: 1 D Pedrosa 41 pts 2 J Lorenzo 36 3 V Rossi 31 4 C Stoner 30 5 A Dovizioso 21 6 J Toseland 20 7 L Capirossi 19 8 N Hayden 19 9 J Hopkins 13 10 S Nakano 10
Bookmark with:
What are these?