Isn't it possible to say simply: "За что ему благодарить?", or "Кого ему благодарить?", or "За что и кого ему благодарить?" ??

That is, using the dative as the "logical subject" of an infinitive -- the first question meaning "What is there for him be thankful for?", the second meaning "Whom should he be thankful to?", and the third combining them into a single question: "Whom should he be thankful to, and for what?"

Note that using the imperfective infinitive suggests a continuous state of gratitude, while the perfective suggests a one-time act of thanking: so "Кого ему благодарить?" could be translated "Whom should he (generally) feel grateful to?", but "Кого ему поблагодарить?" could be translated "Whom should he say 'Thank you!' to?"

The possible negative answers to these questions might include:

Не за что ему благодарить. (There's nothing for him to be thankful for.)
Некого ему благодарить. (There's nobody for him to be thankful to.)

(Note that syllable stress in "не за что" and "некого" must be on the "не" -- "ни за что" and "никого" have different meanings, and are spelled with an unstressed "и"!)

And the positive answers might include:

Ему за много благодарить! (There's a lot for him to be thankful for!)
Ему
многих людей благодарить! (There are many people he should be thankful to!)
Ему поблагодарить Павла за подарок! (He ought to thank Pavel for the gift!)

(Native Russians, please correct this if I'm wrong!)