Repsol Honda rider Pedrosa beat teammate and compatriot Marquez by 2.757 seconds, and reigning World Champion Jorge Lorenzo made it an all-Spanish podium in Sepang by placing third for Yamaha Factory Racing.
Pedrosa has now shortened the standings gap to 11 points on second-placed Lorenzo with three races remaining.
Lorenzo was 6.669secs off Pedrosa's winning time of 40 minutes 45.191secs, with Italy's Valentino Rossi (Yamaha Factory Racing) pipping Alvaro Bautista (Honda Gresini) to fourth spot.
British duo Cal Crutchlow and Bradley Smith were sixth and seventh for Monster Yamaha Tech 3.
Photos: Akshay Kumars son Aarav's night out in Juhu
Photos: Shilpa Shetty, son Viaan, Geeta Basra on 'Aunty Boli Lagao Boli' sets
Photos: Isha Ambani and mom Nita show their stylish side
Photos: Ileana D'Cruz flaunts plunging neckline in black dress
Photos: Shamita Shetty, Bhumi Pednekar at fashion show