Can one use a thermometer with $\pm$5 mK accuracy to measure a temperature difference of 2 mK (the measurement is near 100 mK temperature on a sample on an ADR)? Using the same thermometer, I am thinking to measure temperature of the sample, heat the sample slightly, measure temperature again, and take the difference. Does the $\pm$5 mK uncertainty cancel out when I take the difference? My thermometer is sensitive enough, my AC resistance bridge is capable of resolving such small temperature differences, but I want to know if the $\pm$5 mK is really an issue here.
Yes, of course you can do it. The 'accuracy' is from a calibration, after all, and your temperature-difference determination establishes a short-term new calibration. If the apparatus were to have hysteresis (the meter pointer is sticky), or if there were interfering signals (the power supply ripple dominating an electrical measurement over a short time), those could cause difficulties that would interfere with your intention, but most measurement apparatus is well controlled for those kinds of errors.
The key here, is that you are resolving differences below the 'it holds this calibration for a year at a time' accuracy. If you can resolve them, with a repeatable measurement, those differences ARE measured, in every sense of the word.
I do not think that you will have a problem measuring a temperature difference of $2$ mK but as to the accuracy you will achieve you need to give/get more information about the type and calibration method of your thermometer.
Suppose that the reading you got on your thermometer was $105.32$ mK' (the K-primed showing it was the value you obtained on your measuring device) the $\pm 5$ mK would indicate that the actual temperature is within about $\pm 5 \%$ of your K' value.
Say that the actual temperature was $103.12$ mK which is well within the $\pm 5 \%$
Now using your sensitive thermometer your next reading is $107.49$ mK' then the chances are that the actual temperature if fairly close to $105.29$ mK.
This is where the type and method of calibration of your thermometer comes in.
I have assumed that the reading on your thermometer in the range $103$ mK to $105$ is always about $2.20$ mK too high.
Given that you have a sensitive thermometer it is this factor which will contribute to the error in your temperature difference.
If your readings were $105.32$ mK' and $107.49$ mK' your measured difference is $2.17$ mK' and the corresponding actual temperatures were $103.12$ mK and $105.29$ mK leading to an actual temperature difference of $2.17$ mK which is the same as the value measured on your thermometer.
However it could be that the second actual temperature is $105.36$ mk which means that the actual temperature difference is $2.24$ mK compared with your measured temperature difference of $2.17$ mK which represents an error of about $3 \%$.
Also built into the error is the sensitivity of your thermometer which I have assumed to be $0.01$ mK' and the reproducibility of readings; by how much do readings of the something at the same temperature change over time.
Repeated readings will reduce the random error but will not reduce the systematic error.
Finally I think that the chances of your first measured reading being $5 \%$ too high and your second measured reading being $ 5 \%$ too low over such a small temperature range are small.
Think of it in terms of two clocks.
If both clocks tick at exactly the same rate but show different times on their dials then the difference between the times at the start and after 2 days will stay the same.
If however one clock ticks faster than the other then the difference in times on their dials at the start and after two days will not be the same.
Assuming the accuracy reported does not include any nonlinear factors, it refers to the inaccuracy in a single measurement, and will not vary much over the time of your experiment, then you can increase precision by integrating multiple measurements. Signal (the temperature) will add proportional to the number of measurements and noise (the inaccuracy) will add proportional to the square root of the number of measurements. Also, it is typical that inaccuracy will be fairly correlated between measurements and imprecision will be substantially less and uncorrelated. It sounds like you care a lot more about precision than accuracy--so that should help tremendously.
In general it's a bad idea to take two absolute measurements and subtract them from each other to find a difference that's comparable to the uncertainty in the measurements; the fractional uncertainty in the difference is much larger than in either measurement. In computer science the problem is sometimes called catastrophic cancellation, but the problem is essentially the same if the imprecision is due to physical uncertainty rather than numerical truncation.
Whether your $\pm5\rm\,mK$ thermometer uncertainty is a systematic uncertainty or a random uncertainty is a question you can probably already by looking at the stability of your data when you're not changing the temperature. The extent to which you can subtract adjacent measurements depends on the random uncertainty, which causes independent measurements of the same quantity to be uncorrelated. If the uncertainty is systematic, it's okay to compare adjacent measurements that are larger than the random error.
If what you want is the difference in temperature between two heat reservoirs, you want a differential measurement. For instance, the operating principle of the thermocouple is a voltage difference between dissimilar conductors that depends on the temperature difference between their two junctions. In your case, perhaps your cryostat could contain a fairly large thermal mass controlled (i.e. by some pid-driven heater) to be near the target temperatures for your sample. Put a thermocouple junction on your sample, the reference junction at your reference temperature, and use a sensitive ammeter to measure the relatively large changes in the small current driven by the temperature difference between your sample and your reference.