The thing is that 'to be' is a special verb in English, so the distinction between "John is being angry" and "John is angry" isn't there, and "John is angry" could mean either current or habitual anger.
You can't argue that because a distinction exists for 'to eat' it also exists or is understood the same for 'to be'. English admits the sentence "Big bird does eat cookies" but not "John does be angry".
In the first case, I read both as temporary states, and the only way to express it as a habitual state would be to make a more complex construction such as 'John is an angry person.'
As for the second case, I think the usual way to achieve that effect in English is to use a frequency qualifier, such as in "John is sometimes angry," to modify the transitory state into a habitual one.
You can't argue that because a distinction exists for 'to eat' it also exists or is understood the same for 'to be'. English admits the sentence "Big bird does eat cookies" but not "John does be angry".