In this setup is that theoretically, in the steady state everything should work, however the main problem is getting to the steady state. So for example:
getting to 1000 rpm: if the motor is not able to lift more than 25 g, then it will not be able to accelerate. If the motor is barely able to lift more than 25 gr (lets say 26gr), then it will take a long time to reach 1000 rpm.
torque rpm dependence: Almost all electric motors have a relationship between torque and rotational velocity. A typical one for DC motors is the following

Figure 1: DC motor torque (source: Robotics SE)
So, the DC motor will accelerate differently at different rpm. So there is a dynamic component.
- length of pulley rope : at 1000 rpm with a 2mm shaft you will have a velocity of about 1 m/s. This is a very high speed for what you are planning, and assuming that your motor takes about 20 seconds to reach 1000 [rpm], then you'd need about 10 [m] or so of wire (which then begs the question how much will the diameter change etc).
one solution.
A solution from the top of my head is the following:
Hook up the motor to a gearbox with a gear ratio of more than 10. The higher the better. Then attach the rope to the shaft. This will have a two fold benefit
- the speed of the rope will drop (so you won't need too long rope).
- the torque will be magnified (so you will need to use a higher dead weight). However that is good, because you can easily procure a 2.5 kg load (for a gear ratio 100) and you will have better resolution.
I can provide more details, (but since this is an old post, I don't see too much point).