(Poster and I have iterated on this in a chat here: https://chat.stackexchange.com/rooms/131792/isi )
The OP mentions that the filter should not impact the signal since the signal is within the passband- this would only be true if this was a linear phase filter, otherwise we must also give consideration to the phase response and distortion that can cause.
Assuming the OP is not adding actual inter-symbol interference with the channel filter used, then what may be occurring here is the effect of a timing offset in the received samples (beyond the obvious phase rotation also present due to the real and imaginary terms in the filter), or the resulting eye diagram is of the Root-Raised Cosine Shaped waveform and not the completed Raised-Cosine shaped waveform that would be available after the 2nd RRC in the receiver. Assuming this is truly Raised Cosine shaped with the expected zero-ISI from pulse-shaping alone, the filter can easily have a fractional sample delay such that its output samples will no longer be at the correct sample locations as the input, so this would not be surprising, nor be an issue with the filter itself as it does not mean loss of information; it just means a compensation fractional delay needs to be included to correct for this, which can be done directly in the original filter as I will explain.
As a quick evaluation, I suggest resampling the signal to a much higher rate for purpose of creating an eye diagram which will immediately show if timing offset or inter-symbol interference is the issue (it will show it the symbol sampling locations chosen are at the ideal location for no timing error). If this is the problem, the solution would be to introduce a fractional delay which is a typical operation in a receiver (timing recovery), since the actual sample locations in a receiver are completely independent as to the samples chosen when the signal was created at the transmitter.
Below shows the effect I am suspecting with the associated eye diagram and constellation patterns showing samples with no time offset vs with a time offset:
The quick fix to correct for a fractional delay offset using the approach the OP has started, is to zero pad the desired channel frequency response out to an integer multiple $N$ of samples prior to taking the Inverse FFT. This will interpolate $N-1$ more samples in between each of the original samples in the time domain impulse response desired. With this the original samples can be selected by using every $Nth$ sample from the resulting response, but alternatively a fractional offset can be introduced by selecting every $N+n$ samples, where $n$ is the fractional offset desired from $0$ to $N-1$.
As a side (and less important) note: Implementing the channel using an IFFT of its (complex) frequency response is not ideal- this is the frequency sampling method of filter design which results in an exact solution only at the frequency samples used but larger deviation everywhere else in comparison to other optimized methods (resulting in many more filter coefficients required to achieve a certain accuracy). Ultimately if the length in total time duration of the filter used exceeds the delay spread of the channel and there is no concern with the processing required, although suboptimal this should not be an issue and provides for a simple solution.