Well, you could have it all hanging in the air, but a little bit of perfboard
would make it a lot less prone to shorts. Trying to stuff an entire Arduino board (even the Nano) in a H0 carriage would be challenging.
You don't need a lot of components, really. A voltage regulator, ATtiny, a transistor or MOSFET to drive the LEDs, and a few caps and resistors here and there, plus either a photoresistor or some communications device.
2400x1800, so no more than 5-6 trains, right?
Which option do you consider more attractive? Lights automatically turning on when it gets darker or you manually turning them on/off?
A simple RF module would also work, I suppose. There should be enough room for it.
You mentioned 9V battery to power the lights. Is that a requirement? Why not pick up the power from the tracks or overhead line? Is there power in the tracks and/or overhead line or are we talking about self powered locos?