Where are you measuring the output, pin 1 or the resistor? What's it driving?
The output of an LM358 doesn't go "rail-to-rail", though it should include ground for low current levels. You might try an LM6132, but the issue may be more in the 358's limited sink current ability - much over 1 ma and the output will go up to a volt over ground.
hi,
You need to connect the R3 to a low adjustable positive voltage in order to force the LM358 close to 0V, this will remove the 1V offset at the output of the LM358.
The gain will then have to be increased if you want a Span of 0V to +5V out.
The adjustable source to R3 should be from the output of a driver OPA.
If you want to try what Eric is suggesting, just try sticking a diode from R3 to ground, pointing to ground. The .7V drop will make sure the output is as low as it can get. This is pretty easy, try it and see if that works.
If not, check on how much current you are trying to sink. The 358 has a funny impedance curve, it increases as the output drops below a volt.