you are correct, however it is not wrong to say לא היה לו מים since water in hebrew like in english is an uncountable noun. The difference is you CAN use it in hebrew as a plural noun. so both לא היה and לא היו are ok.
My answer 'He didn't have any water, so he fainted' was marked incorrect. I'd say my answer sounds more natural in English, and it means the same thing. It isn't necessarily emphatic here; it just sounds more natural.
Similarly to someone who commented a year ago, my answer 'He didn't have any water so he fainted.' was marked incorrect. Pity this course is not updated with corrections, as do French, Spanish and German.