modulate/demodulate audio file as FSK signal mixed with music signal
So, your unmixed secret signal has energy content in a frequency range of ca -6 kHz to +6 kHz.

As far as I understand, you mix that with a real cosine of ca 19 kHz, so that it now has signal content in -25 kHz to -13 kHz, and +13 kHz to +25 kHz. All things are still nice and symmetric – so if you mix it back down to 0 Hz, you'd still have the original spectrum.

Only that your 48 kHz sampling rate doesn't even allow your to unambigously represent a signal above 24 kHz – it instantly aliases into the lower end, and vice versa, so you have distortion in your signal of interest (still shouldn't be hearable).

But then you high-pass filter at 500 kHz above the frequency you shifted to – but that cuts off 5.5 kHz of your signal! So, afterwards, your signal is no longer symmetrical in spectrum, and mixing it back down will produce non-constructive aliases.

So, to understand what's happening here, plot your secret signal's spectrum after being shifted up. Don't use the logarithmic frequency axis, but simply linear frequency.