How can a black hole reduce the speed of light?
Have a look at the question Speed of light in a gravitational field? as this shows you in detail how to calculate the speed of light in a gravitational field.
I haven't flagged this as a duplicate because I'd guess you're not so interested in the details but rather how the speed of light can change at all. You've probably heard that the speed of light is a constant, so it's a fair question to ask why it isn't constant near a black hole. The answer turns out to be quite subtle.
In special relativity the speed of light is a global constant in that all observers everywhere will measure the same value of $c$. In general relativity this is still true only if spacetime is flat. If spacetime is curved then all observers everywhere will measure the same value of $c$ if the measurement is done locally.
This means that if I measure the speed of light at my location I will always get the value $c$, and this is true whether I'm sitting still, riding around on a rocket, falling into a black hole or whatever. But if I measure the speed of light at some point that is distant from me I will generally get a value different from $c$. Specifically if I'm sitting well away from a black hole and I measure the speed of light near it's surface I will get a value less than $c$.
So the answer to your question is that in GR the speed light travels isn't always $c$.
How can a black hole reduce the speed of light?
Because a gravitational field is a place where the speed of light varies. See Einstein talking about it in paragraph 2 here:
The speed of light varies in the room you're in. If it didn't, your pencil wouldn't fall down. Like John Rennie was saying, the locally-measured speed of light is constant. But's that's only because we use the local motion of light to define the second and the metre, which we then use... to measure the local motion of light. Duh! See Magueijo and Moffat talking about this tautology in this paper.
If the speed of light is always constant then light should escape from a black hole because if directed radially outwards it only needs to travel a finite distance to escape, and at a speed of c it will do this in a finite time.
Correct. But it isn't constant. See this PhysicsFAQ article where author Don Koks says things like "this difference in speeds is precisely that referred to above by ceiling and floor observers" . Or see Irwin Shapiro saying "the speed of a light wave depends on the strength of the gravitational potential":
Since light cannot escape from the black hole that means the speed of light must be less than c near the black hole.
Correct. See Propagation of light in non-inertial reference frames on Wikipedia. It says this:
"The coordinate speed of light (both instantaneous and average) is slowed in the presence of gravitational fields".
That's what John Rennie was referring to when he talked about measuring the speed of light at some point that is distant from him. But he didn't tell you the whole story. Because the Wikipedia article also says this:
"For example, at the event horizon of a black hole the coordinate speed of light is zero".
That's why the black hole is black. The vertical light beam doesn't get out because the speed of light at that location is zero. Note that the article also says "while the proper speed is c". This is a mistake. If you were at a location where the speed of light and everything else is zero, gravitational time dilation is infinite, and it takes you forever to measure the local speed of light. So you don't measure the local speed of light to be c. Not ever. And the amazing counterintuitive thing about all this, is that when the vertical light beam does ascend, from the surface of a planet, it speeds up.
A black hole doesn't slow down the speed of light. Because the geodesics of space-time are so curved around the horizon, the light cannot escape because its path become close to circular, so it keeps rotating around the black hole horizon. Eventually if, close enough, it will spiral into the black home itself to never escape.