Hmm that is strange... I tried something similar and I couldn't replicate... however, is it possible that your "Visitor ID" is changing between hits? So that the actual "UV" identification of the user is watching their journey, but somehow the ID that you are recording isn't holding, and therefore is causing issues?
Or maybe "Page 1" was technically seen in December, while "Page 2" was seen in Jan (and so the page 1 is not shown due to the date range)?
Average Time on Site and Average Time per Visit (seconds) are both a calculation of the visit length based on the timestamp... one is presented in "time" format (i.e. 00:23:07), the other is shown as "seconds" (i.e. 23.13)... if you create a new calculated metric using Average Time per Visit (seconds) and set it to "Time", it should match the Average Time on Site:

That said, when you are dealing with segments, sometimes I've found some oddities with the calculations, but more so with the "total" time metrics (which also do some adjustments for bounces) (See https://experienceleaguecommunities.adobe.com/t5/adobe-analytics-questions/time-spent-and-segment/m-...)
But I think the average ones are both fairly stable....