May I ask the difference in meaning between the two sentences above?
Using
if/whether shows there are two possibilities at the fore of the speaker's mind, who's thinking either she will or she won't. There's an internal question that asks 'Will she or won't she?' There is uncertainty about which of the two possible courses of action the mother will take.
Using a
that-clause states that Stephen is doubtful as to the truth of the proposition expressed by the sentence
his mother will buy him a present from India. The meaning could be more about doubt than uncertainty, and there carries no predominant mental question of the outcome of one possibility over another.
I understand that in this context, there's little if any effective difference to be had between the two example sentences since the difference in meaning is a difference in thought only. In other utterances the difference between
if/whether-clauses and
that-clauses when following predicates of uncertainty may be a bit easier to see:
I don't know if I should go tonight. What do you think?
Are you sure that you locked the door?
I doubt that you'll want to see him right now.
They weren't certain whether you wanted the chicken or the fish.