i have encountered a very similar issue. First of all, do what everyone suggested and zero pad the vector to go incrementally down to 0 and create a conjugate symmetric mirror image at the end of the vector before applying ifft. this is just the proper way to do it.
but the problem still remains, right?
Well what i found is that zero padding somehow causes this. im really not sure why and it might be hidden behind matlabs algorithm implementing the operation.
you can solve it though.
what you want to do is first to smooth out the transition, instead of having a sudden jump to zero