Very common solution to this is following:
Offer a 90 day code warranty period. Over those 90 days you'll fix (For free) defects in your application.
However, wild goose-chases like you're mentioning above will result in an invoice. Only problems originating from YOUR code will be covered.
IE: You spend 2 hours finding the issue they mentioned.
1) Problem exists in your code. a) You fix it, and you don't invoice them.
2) Problem is in another part of the system a) You invoice for the time spent.
This is by far the most far and reasonable way to look at this problem I reckon..