>> Does the word “recognition” has to be presented in public?
No. In public, in private, even by yourself. e.g. "Paul recognised he had been working really hard, and rewarded himself with a beer."
>> If I receive someone’s email expressing their appreciation, can I say:
>> Thank you for your kind words in recognition of my efforts.
Absolutely you can. Nice sentence, sounds very natural and appropriate. (But, it's quite formal - appropriate for work, but not your best friend)