Using this hfe I've calculated base current:
There's your mistake. That chart only applies when Collector to Emitter voltage is +4V. You have the Collector and Emitter swapped around, so VCE is negative and HFE will be very low.
Also bear in mind that those curves only show typical values. Actual current gain will vary between individual devices, as well as being temperature dependent. This circuit is OK if you only want to limit current to about 2A, but not if you want a more precisely defined value.
Update 1
I've made changes in the scheme according to all comments collected.
Also I've changed source voltage to mach Vce=4V on the charts for hfe
value. Scheme still showing wrong values. New R2 calculated the same
way
R2 = (4 - 0.9) / 0.0571 = 54.290
What's wrong now?
After swapping Collector and Emitter connections the current through R1 is now much closer to your calculation, but still off by 0.92A. Calculating HFE in the simulation we get (1.08-0.0505)/0.0505 = 20. The datasheet says minimum HFE at 4V and 1A is 40. So the model is 'wrong'.
But models are only an approximation of the real world, so they are always 'wrong'. This particular model may be too simple to track the actual performance closely, or it may have been derived from another manufacturer's datasheet which had different specs.
Your calculations also have a significant error - you have not accounted for the voltage drop across R1. At 2A this will be 1V, so the voltage across R2 is 4 - (1 + 0.9) = 2.1V, and the value required for 57.1mA Base current is 2.1/0.0571 = 36.8Ω. You should also account for Base current going through R1, though as this is 35 times less than the Collector current it may be small enough to ignore.
If your only concern is getting an 'accurate' 2A through R1 then a single resistor by itself could do a better job than your circuit. It will still be sensitive to supply voltage, but not as much as the transistor. It would probably also be less temperature dependent and have much more tightly controlled specs.