It sounds strange since you are certain that the filter is ok. You aren't telling which MCU you are using, assuming HCS12.
On HCS12 you must use the Pierce oscillator to be able to reach 40MHz bus. Are you using this oscillator?
What does the oscillator clock look like? Might not be accurate to measure unless you have special probes for the oscilloscope, but even without one, you will get the rough picture. Is it still running at 20MHz? Is it stable, ie has the PLL locked?
The register CLKSEL is "write-once" in normal single-chip mode. Make sure no other part of the code is writing to this register before you do.
If you enable SCMIE in CRGINT, do you get self-clock mode interrupts? Note that self-clock mode is enabled by default out-of-reset, just not the interrupts.
1) No.
2) The PLL will indeed change the clock input to the SCI and to every other peripheral since the busclock is derived from the PLL (PLL clock / 2).