Actually emulate another terminal type instead of just declare When I change 'declare terminal as' value in profile's advanced preferences in Terminal App my terminal declares itself as another type but actually always behaves as xterm-256color type e.g. 
     

echo $TERM


gives 

xterm-16color


but It's still able to display 256 colors.

Is there any way to make Terminal App also behave as declared terminal?
This is not possible with Terminal.app, as it does not support emulating older terminals.

You'll have to use a different terminal program in order to see how your output looks in terminals that do not, for example, support 256 colors.

Note that $TERM (the variable used to commmunicate to user programs which kind of terminal you have) is not read by the Terminal software itself to configure it - it is read only by user programs such as a for example top so that it knows what kind of commands it can use. Not all software supports it however.

Also be aware that the usage of legacy terminals is very, very low. Desktop and laptop computers have for ages come with software that supports modern terminals with support for 256 colors. You'll need to either setup your computer purposefully for a 16 color setup, or have a really, really setup in order to be limited there.