Ever since I bought my Nexus 5 in December 2013, I have been having this issue. My Nexus 5 won't automatically switch to the roaming network when I travel from one state to another (Even if my network operator has a coverage in the state). The only fix was to go to settings and select the network manually, which I had to repeat once I come back to my home state. This created hell of a lot of problems when I did a train journey across the length of the country, which meant I had to manually select the network every time I entered a new state. This was very frustrating.
I even contacted Google hardware support about this issue. They gave me some instructions which didn't work. It seemed they were not aware of such an issue. For 2 years I lived with the frustration.
Now it is April 2015, and finally it seems Google has found a solution with the release of Android 5.1 Lollipop update. Ever since I updated my Nexus 5 to Lollipop 5.1, it has been working seamlessly. Now my Nexus 5 automatically switches to roaming network without any issue. The network switches back to home network when I enter my home state. It took almost 2 years for Google to fix the issue, too long for such a big player. Anyway, I am happy that it is fixed now.