Configure a large cache. I'm not sure what the default is but 1000 to 10000 entries wouldn't be out of the question. With a large cache in place, you should initially have to look up a bunch of things, but after a while much of the common sites you use will be cached, and you won't really hit the servers very hard.
suggests the default is 150, which I could imagine wouldn't last long, these days loading even a single web page requires 5 to 20 DNS lookups for all the tracking spam and partner pages and content delivery networks and things
You probably mixed up cached and uncached results.
Check Dnsmasq runtime configuration, it shouldn't be there.
Dnsmasq init-script has only one entry for that option:
This is how Dnsmasq has work on every implementation I've ever seen. Only the fastest Query reply is accepted - all others are rejected. If this shouldn't be the behavior (as others above describe), perhaps there's a documentation issue.