One thing that makes me think the ending was a dream was that his kids look exactly the same as they have in his previous dreams (except he can see their faces). It is implied that he hasn't seen them in a good while and that they should be older. The fact that they still look exactly like he remembered them makes me lean towards it being a dream.
That is an interesting point, one I didn't think of.
The boy looked like he was wearing a really fake wig.