So today's update is that he tried really hard. And failed miserably in one of the cases and did well in the other.
Case 1: He called at 5 till 5 and told me he was wrapping up and would be leaving shortly. And that he would call me again when he actually did leave. The fail came in when he, once again, underestimated how much work he had left to do and didn't leave until 10 of 6.
Case 2: He just now called to say he was close by, even though he's still well within his 1 hour normal commute time period and will likely make it home within the hour. Bonus points for calling when he didn't have to.
I think I might need to make him a flowchart of some sort to graphically display the situations when he should call and at what time he should call and things like that. He's a computer guy, after all, I think they like things like that :)