Complex impulse response functions?
Filters are usually real, not complex, but occasionally they are complex.  What do you do with the complex impulse response?  Convolve it with your data, just like you would with a real impulse response.  This will likely result in a complex output.  What you do with the imaginary part at that point depends on the situation.  Sometimes it makes sense to leave the data complex, sometimes it makes sense to get rid of the imaginary part.

The imaginary part of the filter would particularly affect the output phase, so the fact that the output phase is not what you expected when you only used the real part of the impulse response makes sense.