I think there are several reasons. Geography, for instance. Areas like NY and California which have more immigrants and minorities, and thus are more cultural diversity, tend to lean more democratic. These cultures also bring their own religions with them. So democratic areas tend to be more interfaith. Republicanism tends to flourish in areas with an old fashioned puritan ethic, probably because they both have a fondness for tradition.
If there's one thing Catholicism has, its tradition. They are just not good with change or compromise. The "Grand Old Party" has a similar philosophy. They are the party that likes to uphold the views and morals of previous generations.
In culturally diverse democratic areas, you can't have old fashioned traditions because there's too much of a melting pot.
So Republicans and Christians have banded together to preserve their old way of life, which have similar views to each other.