I2C Isolation using Switch
(I can't comment yet - not enough points, so this is more of a comment than an answer.)
Please clarify the power supply conditions for the SoC and the controller when both are on and when "the system is off."
- When "on," are they both operating at the same voltage (what voltages)?
- And when the system is "off", you mean the SoC is off and the controller is on?  From your comment that the I2C lines are in an undefined state, that appears to be the case (the SoC supply is off, so the I2C lines are no longer pulled up).

The leakage you are seeing is from the controller supply to the SoC I2C pins' ESD diodes to the SoC supply.  If you check, the SoC supply is probably not at ground but is pulled up a little by the external pullups you added.

By "it consumes more power," are you referring only to the current in the pullup resistors or also to supply current of the controller IC?  CMOS input logic needs to be driven at a supply or ground level to avoid drawing current (crowbar current or shoot-through current) that occurs when the input is somewhere between the supply and ground voltages.

Here's an option that might avoid an isolator:

Add external pull down resistors on the I2C lines to ground.  Make these weak, on the order of 100kohm.  If the SoC is not powered, then this will be sufficient to ensure the lines are pulled to ground and the leakage in the controller input logic will be avoided.  And when the SoC is on, there will be additional leakage current through these, e.g. 3.3V/100k x 2 = 66uA.  If that is negligible in your power budget then this might be a decent solution.