The correct answer is Option D.
CAN means being able to.
COULD is the past tense of CAN.
In the given sentence the speaker is asking the person if her/his son is able to speak English.
The person answer by saying that he was able to speak the language when he was schoolboy (reference to a time in the past).
Thus CAN/COULD is the correct answer.
The remaining options are incorrect because:
HAS TO/MUST expresses compulsion.
COULD/MAY - COULD is the past tense, the sentence is in the present tense. MAY expresses possibility.
MIGHT/CAN - MIGHT expresses possibility and CAN expresses ability. It is irrelevant in the sentence.
MAY/MUST - MAY expresses possibility. MUST expresses compulsion.