THE speaker in this poem reminisces about a time when people were sincere and caring in their dealings with one another; he speaks regretfully about the present time, when people are not like before. He seems to feel that people have lost the innocence and openness which he now sees in his young son; he wants to regain that innocence.
The poem starts with the well-known words "Once upon a time", suggesting that what the speaker is going to say is a fairy tale, something so far-fetched it might not even be believed. This makes us think that honesty in expressing emotion is so rare nowadays that it practically is a fairy tale.
The poet creates a contrast between "hearts" and "faces". "Hearts" suggests deep, honest emotion. Thus, when people laughed or shook hands "with their hearts", their emotions came from within. Now, however, they laugh "with their teeth", not with their eyes. It is a cliché that the eyes are the windows of the soul, but they do let us see what a person might be really feeling.
If someone laughs with their eyes, we can see their emotions. But teeth, which are hard, white, and expressionless, reveal nothing. And the people's eyes have now become "ice-block-cold", revealing no warmth. People are now dishonest (while shaking hands, they use the free hand to "search my empty pockets") and insincere, saying things they do not mean.
The speaker tells us that he has learnt to deal with this hard, insincere world by becoming just like all the other people; he too hides his real emotions and speaks words he clearly does not mean. He describes his behaviour in an interesting way, saying that he has learnt "to wear many faces / Like dresses" - like dresses, he changes his 'face', taking one off and exchanging it for something more suitable: "homeface / officeface / streetface" and so on.
We can look at these faces as a series of masks or false faces, which show no real emotion. These faces, unlike hearts, are not sincere....