Congrats on diving down the programming rabbit hole!
For remote I/O over Ethernet, just buy more Ethernet-enabled Click PLCs. They're as cheap or cheaper than standalone I/O, and you always have the option of putting some local "smarts" in each if you need it.
For the master PLC, I'd actually recommend the BRX line from A.D. They're more expensive, but they have some extremely useful instructions for an application like this. They have a GETTIME instruction that will update the PLC's internal realtime clock when programmed to do so. Most of the Click PLCs have a realtime clock as well, but no automatic way to update them from a remote time server. The Click's RTC accuracy/drift isn't exactly awesome (I know this firsthand), so someone will occasionally have to update it to keep it accurate.
The BRX can be set up as an Ethernet I/P master, and the Clicks as Ethernet I/P slaves, so using them as I/O should be a snap. I don't think you even need to put any code in the Clicks when used as Ethernet I/P slaves, if memory serves.
FInd a photocell with a relay output if you want to interface it to the PLC. You may not have to though - since the PLC has a realtime clock, you can match ON/OFF to civil dusk and dawn throughout the year, and it'll account for DST if you program it to.
Don't use a separate timer. That'll be a pain to maintain and (re)program. "Is the timer doing it, or is it something in the PLC?" If you need a user interface to adjust settings, add a small HMI. AutomationDirect sells the C-more Micro. They're quite reasonable cost-wise, and work well. The programming software is pretty straightforward too. Look at it this way - you can use it as an opportunity to learn more controls programming
SceneryDriver
Thank you for these suggestions, that does sound like a better way to do it with more flexibility. For this project, I am leaning toward my original concept to keep it simple. The main purpose of even using the PLC is to use the existing ethernet infrastructure to get control over to the remote buildings. The lighting control is simple time clock + photocell, with manual overrides. From the customer's viewpoint they have a normal timer for their maintenance people to fiddle with and the PLC is behind the scenes making it all work. That said, I will likely take another look at implementing this in the manner you suggested.