This actually happens somewhat often out of PVG and I’ve also had it happen in PEK. You are correct that the FMC will not let you offset when you’re on a SID/STAR. However, there is a simple way around it:
Just select the fix you’re headed TO and drop it back into the TO position, then Execute. You haven’t affected your navigation/SID, but the FMC thinks you’ve now gone “direct” and are no longer on the SID.
You can now go to the RTE page and offset as usual.