2. I can't find any setting for this specifically, but this is definitely not how it works for me. If I open a folder and fetch, it gets the most recent 25 emails. In addition, you can change this number (even to "all").
3. As per 2, I can't say I've personally had any issues on this front... do other apps with similar functionality perform correctly on your IMAP server?
I guess YMMV, but I tried a lot of mail apps before settling on K9. The beauty of IMAP being that I can switch at any time, but I can't think of anything I need that K9 doesn't do.