FYI: i actually wanted to buy some of those too, so i went in act 1 into a dungeon, saved and then went to the battlefield-merchants. If no Holy Water, i reloaded. Then, after around 45 minutes merchant Olaf had a Holy Water AND all other merchants around him too, only Keith, the merchant far up in the north did not have one.
Btw, the Holy Water is always the last item they have in their inventory, so you can scroll directly down to the bottom. Price of each is 32812 gold