I agree with you about swapping SIM cards being a pain and also that unlocked phones would be required. This is far from a perfect solution, and dual SIM phones are rare and can not be assumed. My goal would be a solution that would work with out a major investment in new phone technology by the user.
Unlocking phones is a mature cottage industry so I'm not too worried about that, but the dual SIM swapping is unavoidable. People swap SIMs all the time to save money when traveling by using a local pre-paid GSM card. It's not elegant, but it could work.
I think you missed my point about why two SIMs would be required. The first SIM would be from a local cell carrier and provide the SMS infrastructure for communicating with the Bitcoin gateway via SMS. The second SIM card would not provide any telecommunications at all and would only be programmed to act as a Bitcoin wallet and to facilitate transactions via SMS messages sent using the first SIM card.
So to your question about costs, they would not be zero. At a minimum the costs would include:
1) cost of an SMS to the Bitcoin gateway to initiate a transaction
2) cost of an SMS from the Bitcoin gateway to notify that the transaction confirmed
3) cost charged by the gateway to perform the Bitcoin gateway functionality
Creating a payment address and checking your bitcoin balance would all be handled locally using the 2nd Bitcoin card so no costs for that. If you need to check an exchange rate, that would also require an SMS message and reply.