Brazilian defender Henrique earned Bordeaux their second League Cup title since 2002 by heading in a last-minute corner.
Lyon, 16 points clear at the top of Ligue 1 with nine matches left, are almost certain to become the first side from a major European league to capture six titles in succession.
They have, however, never completed a league and cup double and were hoping for the first until Henrique shattered their hopes against the run of play with a few seconds remaining in a tense game at the Stade de France.
United to let De Gea or Henderson go, targeting Haaland - Paper Round
The defeat was a further blow to Lyon after they were eliminated from the Champions League by AS Roma in the first knockout round earlier this month.
"It's tough and disappointing for the players," said Lyon coach Gerard Houllier.
"Their efforts were not rewarded but in a final, you have to use the opportunities you get and we failed to do that tonight."
Bordeaux finished runners-up to Lyon in Ligue 1 last season and each side won away in their two league meetings this season.
"We suffered in the first few minutes but we remained calm," Bordeaux striker Jean-Claude Darcheville said after his team made sure of a ticket to the UEFA Cup.
"We had to keep fighting and that's exactly what we did."
Playing aggressively and showing more initiative up front, Lyon, League Cup winners in 2001, threatened a few times in the opening 15 minutes, notably with a couple of attempts from lively forward Sidney Govou and a long-range shot from midfielder Jeremy Toulalan.
The pace of a rough game marred by many fouls and featuring five yellow cards then dropped with Lyon looking in control but creating few chances until a free kick from over 30 metres by Brazil midfielder Juninho nearly surprised Bordeaux goalkeeper Ulrich Rame just before the break.
Bordeaux, lying third a huge 21 points behind Lyon in the league standings, resisted with tenacity but were rarely dangerous in front of goal in a largely dull second half.
They obtained a corner in the dying moments, playmaker Johan Micoud took it and Henrique rose higher than Brazilian defender Cris to settle the game.
Not as prestigious as the French Cup, the League Cup, which was introduced in the 1994-95 season, is seen by its critics as an unnecessary addition to a crowded calendar.
For the first time in years, two top clubs met in Saturday's final which was watched by a crowd of more than 79,000.
Lyon go top of Ligue 1 with win against error-strewn Brest
Man Utd target West Ham's Soucek - Paper Round