Being able to seamlessly switch sounds during a performance seems to be a common problem on keyboards and synths-- although problems most often occur only if there are notes being sounded while the patch change is implemented, especially if the old patch and the new patch contain significant differences in things like the effects settings, volume, and other sound parameters.
The effects settings can be especially problematic since they're usually system parameters which affect all channels-- e.g., if one patch uses a given Reverb Type and another patch uses a different Reverb Type then changing to the second patch could impact the sound of any active notes playing under the first patch, even if the patches are being used on two different channels.
It can also depend on how the keyboard or synth handles patch changes on a channel-- e.g., whether the tone generators which are playing any active notes for that channel are allowed to continue using the old patch or whether the new patch is applied to them.
However, you mention changing patches between songs, so it sounds like your problem might be unrelated to the types of issues I described above.
Another common complaint when switching from one voice to another on a keyboard or synth is that there's a notable change in the volume. This is most common when the voices are presets that use predetermined values for their various sound parameters, because the channel volumes for the two voices might be significantly different. There could also be differences in the overall amplitudes of the sampled sound waves themselves. And even with equal amplitudes, the perceived sound volume might be different due to differences in frequencies-- I.e., in the timbres and harmonic contents of the sounds, even when notes with identical note frequencies (e.g., A4 = 440 Hz) are being played.
If this is what's causing the issues you're experiencing, then the best solution would be to avoid using the preset voices as much as possible, and instead use voices that you've carefully set up and tested ahead of time-- i.e., user or custom voices, where you select a preset voice as a starting point, edit the sound parameters to your liking, and save them to a user voice number, performance setup, registration memory, etc. that you can quickly and easily recall when desired.