In a match reduced to 20 overs a side that was in doubt for much of the day, a fifth-wicket partnership of 64 between Eoin Morgan and Ravi Bopara put England in sight of a victory target of 130 and their first major 50-over trophy.
But the pair fell to successive deliveries by Ishant Sharma before England's lower order crumbled and the hosts were left stranded on 124 for eight.
"This victory is sweet, especially beating England at home," India batsman Virat Kohli told Sky Sports as his side added cricket's second 50-over trophy to the World Cup they lifted at home in 2011.
"This victory is very sweet for us, we had some bad memories in India and this victory feels really nice," he added, referring to England's test series win in India in December.
Miserly bowling by Bopara and James Tredwell helped England restrict India to 129 for seven after the start had been delayed by nearly six hours due to the typical English rain which threatened to force the match to be abandoned with no rest day allocated.
Kohli top-scored with 43 and Shikhar Dhawan, the tournament's leading run-scorer, made a breezy 31 but India were never able to dominate a disciplined England attack.
Rohit Sharma was bowled by Stuart Broad for nine and Dhawan mis-timed a drive in Bopara's first over and was caught by Tredwell at mid-off.
Dinesh Karthik skied a catch off Tredwell and Bopara struck twice in his third over, getting Suresh Raina caught by Alastair Cook at mid-on and dangerman MS Dhoni well taken by Tredwell on the third man boundary.
Bopara completed excellent figures of three for 20 but Kohli and Ravindra Jadeja took 30 runs off the next three overs and Kohli, badly dropped by Jonathan Trott, launched Broad for a massive six over square leg.
Kohli skied James Anderson to long off but Jadeja finished unbeaten on 33 after clouting Tim Bresnan for another six in the final over of the innings.
England lost wickets steadily at the start of their reply.
Cook fell for two, edging a catch to first slip off Umesh Yadav, Trott made a fluent 20 off 17 balls before being stumped by Dhoni off Ravichandran Ashwin and Joe Root pulled the same bowler straight to long leg.
Ian Bell's laborious innings of 13 ended when he was controversially given out by the third umpire, stumped by Dhoni off Jadeja.
England were in deep trouble at 46 for four, bamboozled by the prodigious turn of Ashwin, Jadeja and Raina.
But Morgan and Bopara batted sensibly to bring up their 50 partnership off 47 balls and, at 102 for four with three overs left, the hosts were scenting victory.
Sharma returned to the attack and after Morgan pulled him for six he bowled two successive wides before Morgan, on 33, spooned a catch to mid-wicket and Bopara pulled the next ball straight to backward square leg.
"I was quite nervous, things were not going my way, but I think I held my nerve," Sharma said.
Jos Buttler was bowled by Jadeja's second ball of the penultimate over and Bresnan was run out in a mix-up with Broad.
England needed 15 for victory from the final over and six off the last ball.
Tredwell missed with a wild heave at Ashwin and the Indian players were left to celebrate a famous victory which vindicated the decision to reinvigorate their team after winning the 2011 World Cup.
Gone from the one-day side are the likes of Sachin Tendulkar, Virender Sehwag and Harbhajan Singh, replaced by younger players such as man-of-the-match Jadeja and Dhawan who made centuries in the Champions Trophy against South Africa and West Indies.
"They handled the pressure really well. People talk a lot about technique and other things, but I think the better players are the ones that adjust to the pressure," captain Dhoni said.
The loss was England's fifth in a 50 or 60-over tournament final after defeats in three World Cup finals and the 2004 Champions Trophy.
The team had targeted the home tournament at the start of a year which also features back-to-back Ashes series against Australia.
"We wanted to have it in our hand, the opportunity to hold the trophy but we were a little bit short today," captain Cook said at the trophy presentation.
"I thought we bowled well and 130, you'd take that to chase, but it's probably a slightly harder wicket to bat than we thought. It's tough to take at the moment."
He remained optimistic they would eventually break their one-day duck.
"Hopefully, sooner rather than later obviously, it's great we had the opportunity today and hopefully in 2015 (World Cup) we can," he said
- Sports & Recreation
- Ravi Bopara
- Eoin Morgan
- Virat Kohli
- Ishant Sharma
- James Tredwell