The Fulham striker took advantage of comedy defending to open the scoring, but a late Joao Rodriguez equaliser caused plenty of nerves in the Three Lions' defence
Cauley Woodrow opened the scoring for the second consecutive game following some poor defending from the South Americans, but Gareth Southgate's side weren't able to capitalise on further opportunities.
They were made to pay for their lack of potency in front of goal as Joao Rodriguez equalised late on, but unless Qatar pull off an unlikley five-goal win over group winners Brazil, England will face Portugal on Sunday for a podium finish.
Southgate continued his policy of rotation despite the importance of the match as just Ben Gibson, Eric Dier and Woodrow kept their places from the team that drew with South Korea on Wednesday.
The Three Lions began brightly, though an error from Josh McEachran almost allowed Gustavo Torres a chance to give Colombia the lead, only for Liam Moore to close down his effort on the edge of the area.
That opportunity was the shot in the arm the South American outfit required, and though they looked the most threatening of the two sides in the opening 15 minutes, they fell behind due to some comedy defending.
With time on the edge of his own area, Aldayr Hernandez inexplicably cleared the ball against team-mate Daniel Londono, and Woodrow had the easiest of tasks of slotting the ball past Alvaro Montero for his second goal of the tournament.
The error seemed to shock Carlo Restrepo's side, and they almost fell further behind as Ben Gibson's near post header was cleared off the line by Londono.
At the other end Rodriguez curled a free-kick narrowly wide from 25 yards, though England continued to threaten as Montero was forced into tipping Jordan Obita's cross from the left behind as it threatened to dip under the crossbar.
Despite injuries to McEachran and Eric Dier before the break, Southgate's side remained comfortable until the half-time whistle, with Colombia unable to penetrate a strong defensive line.
England remained in charge early in the second period, though it took until the hour mark for either side to have a shot on goal as Solly March broke down the right before firing straight at Montero.
That sparked the game into life, and after Rafael Borre fired into the side netting, Obita forced Montero into a save with his feet after March's deep cross from the right found the Reading man at the back post.
England introduced Nathan Redmond from the bench as they chased a second goal, but instead they found themselves clinging on following Rodriguez's equaliser.
The striker stole into the box to beat Jordan Cousins to the ball after Borre crossed from the right-hand side, and from there England were camped inside their own half for then final ten minutes.
Gustavo Torres fired narrowly wide in the closing stages, but in the end the Three Lions were able to hold out and do just about enough to qualify in second place from Group B.