Alastair Cook (76), Kevin Pietersen (76) and Joe Root (57 not out) all hit half-centuries as England made 257-7.
Rohit Sharma scored 83 to get India off to a good start, before Suresh Raina finished the job with an unbeaten 89.
Raina had been caught at slip on 41, but umpire Steve Davis called dead ball because bowler Steven Finn’s knee broke the stumps at the non-striker’s end.
That problem summed up England’s display in the field as their bowling attack struggled to seize the initiative from the Indian batsmen.
Finn, with his extra pace and nagging line, was England’s most effective bowler but was again left to reflect on a problem where his knee clipped the stumps in his follow-through.
The problem first became apparent in August 2012, when Finn was denied South Africa captain Graeme Smith’s wicket because of a dead ball. The 23-year-old paceman might have got England back into the fourth one-day international had the problem not reoccurred when India still needed 80 runs to win.
Raina took advantage of the reprieve to lead his team to a convincing victory, which was achieved with two and a half overs to spare.
England will also regret a poor umpiring decision from Sudhir Asnani, which ended the innings of Cook with his team well placed on 132-1 in the 32nd over.
The skipper looked on course for a century until he missed a Ravichandran Ashwin delivery and was hit on his pads. Despite the ball appearing to pitch outside leg stump, Asnani raised his finger.
The tourists had been watchful early on – the only blemish being the loss of Ian Bell (10) after the opener came down the wicket to Ishant Sharma and got a thick outside edge to Bhuvneshwar Kumar at third man.
Cook relished the challenge of building an innings, while Pietersen battled hard against the seaming ball. Neither player was particularly fluent – Cook effective on the sweep and cut and Pietersen happy to rotate the strike – but the hard work looked to be paying off until Cook’s dismissal.
Eoin Morgan (3) followed soon after, when he chipped Ashwin to the back-pedalling Yuvraj Singh at mid-off, and Samit Patel (1) gave a return catch to Ravi Jadeja (3-39).
England appeared to be stumbling but Root, who had been pushed down the order, took advantage of being dropped on nought to help Pietersen steer England towards a more challenging total.
Root, 22, scored at virtually a run a ball as he showed a canny knack of finding the gaps on both sides of the wicket – the highlight being a six into the leg-side off Ashwin.
Pietersen had earlier posted his slowest ODI fifty but he also upped the tempo and smashed Sharma into the stands with a mighty six before being bowled.
An aggressive cameo from Jos Buttler (14 off nine balls) complemented Root’s clever strokeplay and helped England add 100 runs in the final 10 overs.
England got off to a good start with the ball when Tim Bresnan had Gautam Gambhir caught behind, while Rohit Sharma was struggling against Finn.
However, the early pressure did not bring enough wickets and India started to take control once the expensive Jade Dernbach (1-59 from 9.3 overs) was brought into the attack.
James Tredwell removed both Virat Kohli and Singh to leave India 90-3, but Rohit Sharma took the momentum away from England with some dashing strokeplay.
He was eventually trapped in front by Finn, but Raina stepped up to steer India to their target with his 79-ball knock.
The fifth and final match of the series will be played in Dharamsala on Sunday.
Re-printed from BBCSports.com