On the arduino float and double are both the same.
The Arduino (at 5V) can sense at best a 4.8mV resolution. If you ignore the LSB as noise, then that rises to 9.8mV resolution.
To increase sensitivity you can switch the analogue voltage reference. If you have the 328P on your board (most do now, only the old ones don't) then you have an internal 1.1V reference voltage you can use for the analoge voltage reference. That would increase the resolution to 1.1mV (or 2.2mV ignoring LSB), which might give you better results.
Either that or you will need to amplify your voltage drop using an op-amp. There are specific current amplifiers available for this job, such as the MAX4172
which I have used and gives good results.