I suspect that students don't learn to change bounds of integration well because they have no motivation to do so. Whether we agree with them or not, it is evidently simpler for them conceptually to evaluate a definite integral by first evaluating the corresponding indefinite integral and then applying the fundamental theorem to that result.
As a teacher, there are a couple of things that I do to combat this. First, I devise problems where the whole point of the problem is to change bounds of integration in the first place. For example:
Express $\displaystyle \int_{-2}^{3} f(2x+1)\,dx$ as a definite integral involving $f(x)$.
Or,
Evaluate $\displaystyle \int_0^{\pi} \sin\left(e^{\sin(x)}\right)\cos(x)\,dx$.
Second, I try to impress upon them that there are plenty of practical situations where this translation from one definite integral to another arises. For example, when exploring probability theory (a natural application of integration in Calc II), we often need to translate a normal integral to a standard normal integral. This amounts to showing that
$$\int_a^b e^{-(x-\mu)^2/(2\sigma^2)} dx = \int_{(a+\mu)/\sigma}^{(b+\mu)/\sigma} e^{-x^2/2} dx.$$
Thus, a rule that many of them learn in elementary statistics arises as a change of bounds in a definite integral.
As another example, that's nice if you do numeric integration, you might show that
$$\int_0^1 \frac{\sin(1/x)}{x} \, dx = \int_1^{\infty} \frac{\sin(x)}{x} \, dx.$$
The point is that the second integral is more palatable from the point of view of numerical integration (rather than from the point of view of symbolic integration, as calc students are accustomed to). The reason is that the higher derivatives of the integrand don't explode over the domain of integration the way they do for the first. You can even illustrate this using a little sage code:
print numerical_integral(sin(1/x)/x, 0,1)
print numerical_integral(sin(x)/x, 1,1000)
# Out:
# (-1.9426263726635902, 42.80850345186512)
# (0.6241500516015874, 5.034861416675085e-14)
The first computation is completely wrong and has an absurd error bound. The second computation is (not surprisingly) correct to three decimal places.
Note that, in all four of these examples, the integrand cannot be integrated symbolically; a change of bounds is the whole point.