I haven't made mods to DA myself, but I have made a few in NWN (and started one in NWN2 that probably never will be finished... but I digress :-))
The point is Levi's dialog is probably governed by variables. When a specific value is reached for one such variable, a dialog option should present itself - e.g. his store.
Problem is: The store is itself a datafile. And if the dialog script calls for something that doesn't exist, nothing happens. By "not exist" I mean e.g. that the script asks to open a store file, say levidryden.sto. But if that object doesn't exist in the area, then nothing happens.
I have seen this particular bug (well, it's not exactly a major one, but it can be puzzling) - I talked to him after I had finished the Keep, and asked to see his store while standing inside the Keep, on 2nd floor. Nothing happened. I suspected that you're not meant to ask him about that in that area. :-)
So I went outside, took a short trip to Lake Calenhad, and returned.... And everything was as expected: Levi standing outside the Keep with his family. And when I talked to him this time, the store opened. So, in NWN terms, the store file object was in the Warden's Keep exterior area - not inside.