Saud Shakeel top-scored for Pakistan with a 62 off 76 balls, while skipper Mohammad Rizwan made a laborious 46 from 77 deliveries as the two batters added 104 runs for the third wicket.
Khushdil Shah chipped in with a 39-ball 38 to lift Pakistan after they slipped to 165 for five at the start of the 37th over.
Left-arm wrist spinner Kuldeep Yadav (3/40) picked up three wickets after all-rounder Hardik Pandya (2/31) dismissed Babar Azam (23) and Shakeel.
Harshit Rana bowled an excellent last over, picking up a wicket without conceding a run.
Brief scores: Pakistan: 241 all out in 49.4 overs (Saud Shakeel 62, Mohammed Rizwan 46, Khushdil Shah 38; Hardik Pandya 2/31, Kuldeep Yadav 3/40) vs India.