Hi,
I am a electrical engineering student who is good at microcontroller like arduino, atmega, 8051, etc...
I have done lots of projects using sensors,motors,etc.
This project can be done with an atmega8 since it just requires 3 digital pins for buttons,one analog pin (if you need LDR to read morse code also),1 digital pin for led.
This can be done by using time delay in writing up and down in digital pin of led, as per requirement and speed.
This can be run by battery which outputs more than 5v,and we can make it small as there is no much wiring just the programming part is main and it can done as small as possible as you mentioned
if given the task to me I will finish it with perfection and submit it to you before deadline