Teenager Nicolas Paz came off the bench to score his first senior goal as Real Madrid beat Napoli 4-2 to extend their perfect Champions League Group C record to five straight wins.
Giovanni Simeone’s scrambled effort had given the Italians a shock early lead at the Bernabeu, but Rodrygo swiftly fired in an equaliser.
Bellingham headed Real in front midway through the first half, scoring his 15th goal of a brilliant debut campaign with Los Blancos.
Frank Anguissa hauled Napoli back on level terms early in the second half, but with six minutes left, 19-year-old Paz drilled in from 25 yards and fellow substitute Joselu added a late fourth.
Napoli had stunned the home crowd as they took an early lead in the ninth minute through a scrambled effort from Simeone.
Although Real keeper Andriy Lunin clawed the ball away at point-blank range, the referee signalled it had crossed the line.
Real, however, were back on level terms just two minutes later.
Brahim Diaz drove forwards before laying off a square pass to Rodrygo. The Brazil winger, who scored twice in the 3-0 LaLiga win at Cadiz on Sunday, cut back into the penalty area before curling a magnificent strike into the top corner.
Real continued to press and went ahead in the 22nd minute.
David Alaba floated a lofted ball from the left through the Napoli penalty area, picking out Bellingham, who planted a header past Alex Meret.
As half-time approached, Bellingham, who had just returned from a shoulder problem which saw him miss England’s final two Euro 2024 qualifiers, needed treatment after appearing to twist his ankle. The midfielder, though, was able to continue.
Napoli brought on striker Victor Osimhen to replace Simeone at the start of the second half and were soon back on level terms.
Di Lorenzo played the ball to Anguissa on the right side of the area. His wayward shot cannoned off Daniel Ceballos straight back to him – and the Cameroon midfielder lashed an angled drive past Lunin from close range.
After being caught cold following the restart, it took Real some time to settle again.
Just after the hour, Joselu sent an effort over the bar at the far post before Diaz was forced off with what looked like a fresh calf problem, adding to Real’s long injury list, and was replaced by Argentina Under-20 midfielder Paz.
Antonio Rudiger’s header was well saved by Meret before Joselu nodded wide from a rebound off the keeper after Bellingham’s drive into the penalty area.
Real Madrid eventually made the breakthrough with six minutes left.
Paz picked the ball up 25 yards out and turned to send a left-foot drive towards the bottom corner, which squirmed past Meret and into the net for the teenager’s first senior club goal.
Rodrygo sprinted clear, only to pull up with what looked like a calf problem and was replaced by Lucas Vazquez to add more selection worries for Real Madrid boss Carlo Ancelotti.
Joselu finally got on the scoresheet in stoppage-time when he fired home a low cross from Bellingham at the far post, leaving Napoli needing a draw at home against Braga in their final game to secure qualification.