S.H.
Its his age.
Its his communication level.
Their emotions are not fully developed yet at this age.
They don't have automatic coping-skills at this age.
You may tell him to use his words... but maybe he doesn't automatically 'know' which words to use, nor the correct words to use... nor what his feelings are... to then use those words.
So... teach him the names, for feelings.
ie: happy, sad, frustrated, tired, hungry, irritated etc.
Tell him the exact, wording to use even, if that helps.
Practice with him.... role play etc.
Give him the 'skills' to then say his words....
If he gets like that when tired.... (which many kids tend to whine when tired), then he should nap.
A child this age, still gets over-tired and needs to nap.
I would just teach him how to communicate and how to use his words... and practice the 'tone' of voice, with him.
Kids don't necessarily 'automatically' know, how to do this.
They do not 'automatically' know... how to communicate.... nor what they are feeling.
all the best,
Susan