Answers:
First post was http://www.perlmonks.com/?node_id=454853
As included in the post Time::Local is 1.07
Production box with HP supplied perl. Did not compile perl on this device.
The code listed is the actual code running. The only change from production was to print the values to document the problem.
Time::Local takes the six parameters listed in the output as values sent and returns date & time in number of seconds. Return value from time local is the number of seconds returned from each time::local call. All dates are within five years of each other so returned values should be within around 157680000 seconds of each other (5 years worth of seconds). The difference between the first bad return value and the data prior is 994114800 seconds.
Due to business requirements, I can only use modules included from HP.