Unfortunately this side effect is by design, due to GetAxis computing its value based on deltaTime of the frame, and if timeScale is set to 0 then deltaTime is also 0, meaning GetAxis will be always 0 as well.
To workaround it please use GetAxisRaw or GetKey, hope it helps.