What parameters of a real op amp determine the lowest voltage it can amplify?
What parameters of a real op amp determine the lowest voltage it can
  amplify?


It's all about signal (desired) to noise (not desired) ratio (SNR). The LM358 has an equivalent input voltage noise of 55 nV per sqrt(Hz). Now that probably sounds confusing but it isn't. Let's say your bandwidth is 10kHz\$^1\$ - the total noise will be 55 nV x sqrt(10,000) = 5.5 uV RMS.

If your signal level is 500 uV then your SNR  is 20 log (500/5.5) = 39 dB.

Is this acceptable? I don't know but it would be fine for a telephone conversation.


  Does it mean that it is not possible to amplify signals on the order
  of 2mV?


No the 2mV figure tells you that with a gain of 100 you will see an output offset voltage (an error) of 0.2V - this shouldn't normally be a problem in an AC amplifier.



\$^1\$ The onus is on the designer to incorporate filtering that sufficiently removes noise above 10 kHz - for instance a 1st order filter (a simple capacitor across the gain setting feedback resistor) is usually enough but, for this type of filter the "noise bandwidth" will be a bit bigger than that determined by the CR components (\$\pi/2\$ bigger). In other words a 10kHz filter will have a noise bandwidth of 15.7 kHz and this would raise the noise from 5.5 uV RMS to 6.9 uV RMS.