I recently bought a Galaxy S2 which came with a 1650mAh battery and in a near future the manufacturer will be offering another one with a 2000mAh. My question is: will it last 21% more than the original? Is this just as linear as it seems or is not the case?
Technically no, the relationship is not linear.
Milliamp-hours (or amp-seconds, coulombs, or any other similar unit) is a measurement of electrical charge, not of electrical energy. As with all common batteries, the voltage is not constant while the battery is being discharged. Assuming your phone was drawing as much power as it could the whole time, the current would be constant; coupled with the fluctuating voltage this means that the energy drain from the battery is not linear. Essentially this means that the first 1650 mAh drained from a 2000 mAh battery will not comprise proportionally the same energy drain as the last 350 mAh, meaning that the battery capacity affects the battery life in a nonlinear fashion.
For your purposes it should give you a more or less linear boost, however. It depends how much current your phone draws at any given time but you can expect an approximate 20% boost in battery life on a full charge. I would suspect slightly less than 20% due to the tail end of the battery being longer (more charge stored in the battery after the voltage has dropped too low for the phone to use it) but I don't know for sure.