Monaco, last season’s runners-up, were outplayed for long spells but - for all Liverpool’s clever, inventive football - were not finished off until six minutes from time.
Djibril Cisse put Liverpool ahead as their slick movement and passing threatened to over-run Didier Deschamps’ side.
But it was not until substitute Milan Baros broke away to grab a second with six minutes left that boss Rafael Benitez was able to breathe easier.
Former boss Gerard Houllier was watching in the directors’ box - and he saw his successor leave out Dietmar Hamann to allow £11 million Spaniard Xabi Alonso to take over a central midfield role.
Otherwise it was the same team which beat West Brom on Saturday, with Chris Kirkland over his back problem and returning to the bench alongside Hamann and Baros.
Injuries and suspensions hit Monaco - with Javier Saviola banned and Ernesto Chevanton and Shabani Nonda injured it meant Mohamed Kallon was up front.
Monaco had only five of the side which played against Porto in last season’s final in their starting line-up.
But despite the defensive aspect - three centre-backs - they broke quickly and had pace and awareness up front, particularly Kallon.
The former Inter Milan man, just back from a UEFA drugs ban, almost caught out Jerzy Dudek in the opening minutes when he spotted the Pole off his line and tried a 40-yard effort which did not miss by much.
But Liverpool started to grow in confidence with some crisp passing and neat and tidy movement, particularly on the right, where Steve Finnan had held his place.
Alonso’s ability to switch play with long, raking passes kept a good supply coming Finnan’s way with Josemi up in support and the lively Luis Garcia linking well.
There had been barely a chance until what looked a lazy Monaco build-up ended with a neat ball from Kallon to Pontus Farnerud, but the Swede wasted the opportunity with a shot pulled wide of the far post.
That sparked Liverpool, and the growing menace of Garcia cost Andreas Zikos a booking when he cut down the quick-thinking midfielder.
But Garcia continued to find plenty of space to work in and almost scored with a dipping 25-yard effort just over the far angle.
The breakthrough came in the 22nd minute, following a foul on Garcia.
Alonso’s free-kick was moved sweetly to Steven Gerrard, who played a one-two with Garcia before playing the ball into the path of Cisse.
The striker cruised into space in the box before lashing a 12-yard effort past Flavio Roma for his first Anfield goal.
Liverpool continued to improve with Alonso having an increasing input, while Finnan was a constant menace, timing his runs into space on the right to collect a string of excellent cross-field passes.
But Garcia caused Monaco most problems and when Harry Kewell put him clear on the left only Roma’s legs prevented a second goal.
Garcia could have scored twice more before the break with headers, with Monaco looking worried.
The typically-busy Gerrard was booked in the 51st minute for a foul on Sebastien Squillaci - before Liverpool got wasteful. Cisse was put clear by Garcia but Roma blocked his shot, while efforts from Kewell and Gerrard cleared the bar.
Monaco found a second wind, with Dudek saving an unchallenged Adebayor header at the foot of a post, before Jamie Carragher headed clear when the goalkeeper failed to come for a cross.
Baros replaced Cisse but Monaco could now sense their chance and were pinning Liverpool back.
Benitez replaced Kewell with young midfielder Stephen Warnock, but still Monaco came forward and a comfortable performance was becoming a nervy display.
Roma needed to be smart to save at Garcia’s feet, but it did not swing the game back Liverpool’s way.
For all his invention and clever play, Garcia is prone to panic in front of goal and he wasted a glorious chance in the 81st minute when he blasted wide from 10 yards after Finnan’s nod-down had left him in the clear.
But the clincher arrived three minutes later after Josemi lifted a high clearance straight down the middle.
Baros gained possession just outside the penalty box, moved into the area and slipped round Julien Rodriguez before firing past Roma from an acute angle.
: Dudek, Josemi, Carragher, Hypia, Riise, Finnan, Gerrard, Alonso, Kewell (Warnock 76), Luis Garcia (Biscan 87), Cisse (Baros 69).
: Roma, Givet (El Fakiri 80), Squillaci, Rodriguez, Anjreas Zikos, Maicon, Perez (Juan 89), Farnerud, Evra (Camara 45), Kallon, Adebayor.
: Terje Hauge (Norway).