It would have been better if John Galt didn't take a job as a track laborer.
I respect the principle not to spend wealth from Galt's Gulch outside the valley. Don't create value there then bring it back to the regular world to aid non-members.
But Galt had better things to do with his time, like work in his lab, and I see a simple solution. Francisco could have simply given Galt a million dollars. Galt could pay him back in some way in the Gulch, or not, I don't think it matters too much. Francisco already had plenty of outside world money and wouldn't be harmed by giving some to Galt (he was in the process of destroying his outside wealth anyway).
Consider the effect on the outside world. In the one case, Galt does some minimally productive work, then spends money on food. In the other case, Galt doesn't do that work, then spends money on food. In both cases, the grocery store gets some dollar bills for their food, and Galt eats the same thing. In one case, an outside world company gets some extra help, though not of a kind or amount that made any fundamental difference.
If Galt just wanted to observe Dagny and chat with Eddie, he could have found another way to visit that was less time consuming than a full time job.
I don't see how Galt doing track laborer work was a good idea. I think it was a real shame he didn't spend most of that time doing physics, reading, thinking about how to recruit Rearden, etc, rather than doing manual labor. And I think the manual labor was unnecessary.