The Repsol Honda rider shadowed his fellow Spaniard off the line before making a pass on lap seven and holding the lead to the chequered flag, which he took nearly six-and-a-half seconds ahead of his rival.
Pedrosa's third win in four races sees him close to within 33 points of Yamaha rider Lorenzo with four races remaining, but the Honda man will still be rueing his costly retirement at Misano a fortnight ago, when he was taken out of the race by Hector Barbera.
"It was a tough weekend. With the cold conditions and the rain yesterday, all the things in my head from the last race, it was hard to keep calm this weekend, but today it was good," Pedrosa told BBC Sport.
"I did a good race. I saw immediately I could go faster and I could pull out a gap.
"The bike was working well, and I'm happy to win here in front of my fans and my family."
Watch: Pedrosa takes victory at Aragon... More Videos
Britain's Cal Crutchlow could not convert his third place on the grid into a podium as he came home in fourth, right in the wheel tracks of Tech 3 Yamaha team-mate Andrea Dovizioso following an absorbing late duel.
Lorenzo made a steady start from pole to lead the opening laps from Pedrosa, but it quickly became clear that the Honda man had the better outright pace.
Pedrosa duly converted his threat into the lead of the race on lap seven as he out-dragged Lorenzo on the straight heading to turn 11 and moved ahead.
A short time later Lorenzo suffered a scare when he had a big wobble on the exit of turn one, and the Yamaha man revealed that moment convinced him to back off and play the long game in the championship battle.
"I made a mistake and I almost crashed," Lorenzo told BBC Sport. "At that moment I knew I couldn't have the same pace as I did have. It was impossible to follow Dani.
"But it was a race for the championship, nothing more."
The race was marred by a nasty crash for Ducati's Nicky Hayden, who lost control on lap two and was attempting to steer his bike away from trouble when he connected heavily with the barriers, pitching the American into the viewing area behind the safety fencing.
After treatment at trackside Hayden was taken to the medical centre for a check-up and was later reported to be okay, although he was given a neck brace and will undergo more precautionary checks.
Hayden's team-mate Valentino Rossi had an eventful race, clipping the back of Honda's Jonathan Rea - the Briton again ably deputising for the injured Casey Stoner - on lap one and dropping well down the order before battling his way back to eighth at the flag.
LCR Honda's Stefan Bradl ran as high as third before he crashed out early on, leaving Dovizioso and Crutchlow to battle it out for the final podium place after the challenge of Yamaha's Ben Spies also fell away.
Spies had to content himself with fifth at the end of 23 laps, ahead of Alvaro Bautista (Gresini Honda), Rea, Rossi, Karel Abraham (Cardion Ducati) and Aleix Espargaro (Aspar Aprilia).