i have exactly the same problem, i temporally fixed by using a local storage (webstorage plugin) ,where you save if a product has been bought, then you load or hide the ads using webstorage conditions , not iap -> "has product(ID)" .
And i think thats the part where crashes, all works fine, less the has product option, at least in my code.
i hope i have been usefull, if you need some help with this or something with your app you can contact me by mail ()
good luck