> So, my question is how to remove carrier offset in the I/Q signals.
If your frequency offset is Fo, you'll need to develop a "local oscillator" signal at frequency -Fo and feed that to one input of a mixer/modulator [multiplier] stage (the other input being your original signal). The output of the
mixer would be the desired signal, with offset removed...
The actual mixing is usually trivial; the more challenging problem is generally how to extract the value of [-]Fo (perhaps a PLL?). This problem is treated extensively in the literature...
Max