Oh, if you used two (or more) invisible non-solid trains following the same path as the original one (set them in front of the original using origin brushes), you could use an invisible env_beam to go between them. Sorta like:
(Bad MSPaint magic!)
Would that work? Or would the beams just go from the origins, meaning you'd need two extra paths for the trains?