To keep it simple take the case of a short horizontal light clock. (Horizontal rulers are not length contracted by gravity.) To an observer higher up, the clock lower down is running slow and the speed of light lower down is slower than the speed of light higher up. These two effects conspire in such a way, that to a local observer co-located with the light clock at a small Schwarzschild radius, the speed of light appears normal. This slowing down of clocks and light, deep in a gravitational well is not an optical illusion, because by lowering a clock down and bringing it back up again, it can be demonstrated that the lowered clock really does run slower than a clock that remained higher up.
It follows that if the clock lower down is really running slower than the clock higher up, then the speed of light lower down must really be slower than the speed of light higher up, in order for a local observer lower down to measure the local speed of light as c.