Your company is gaslighting you. None of those reasons are valid. The first one is the closest to the accurate answer, but the real answer is "because we can hire people in your area for this rate". Try contracting, for a US company, for US rates; set a rate that's comparable to what other US contractors charge, and don't take clients that want to negotiate your pay based on your location.
You might also try building some reputation on Open Source projects with a strong community, the type that's regularly being hired for. Get referrals from your colleagues in that project for people looking for employees or contractors. Cite the rates your colleagues make, and don't accept location-based reductions.
(Also, make sure you have a job or contract lined up before you leave, unless you're really confident you can get one at the rate you want.)