I tried again from a save just before taking the rift back to Rivellon, and didn't get any holy water. Maybe it didn't effect my save because it was started in the unpatched game? I did have the 1.45 patch installed in the middle of act 3.
As far as I know, if one BF merchant has holy water, they all will. I didn't know there were any to be had otherwise, except for the one from the hermit's quest.