I would guess the problem is that on a slow gradient, each individual block is very close to a constant. The tiny AC coefficients tend to be quantized away, resulting in a visible transition along block boundaries.
I thought the loop filter was supposed to help with this though.
I thought the loop filter was supposed to help with this though.