It makes long term sense, because its a losing battle. The older generation doesn't believe in gay marriage, but the younger generation does and the younger generation will supplant the older one soon enough. If the GOP wants to appeal to people who are not old white men, it will have to change its social polices.
Plus this comes off as a contradiction, the GOP says its for small government, but its telling consenting adults who they can and can't get married to? If marriage is a contract, why should it be treated differently then any other contract? We don't tell gay couples they can't buy a house, so why can they get involved in one contract and not another? I have not seen one good argument against gay marriage, its based on personal religious beliefs and I don't think public policy should be based on personal religious belief. That is big government, no matter how you slice it.
If you believe in small government, you can't make these vast exceptions. Times change and people who don't change with them will be left behind. A party needs people far more then people need a party, a party that can't keep up with changing demographics will be left behind. The GOP can still be a viable right wing party, but they have to accept its not 80s anymore, the coalition that Reagan created doesn't work anymore, Regan's day is done and it has been for a while. The GOP can stay in the past or look to the future.