1.) No. If anything, you'll find that you can start doing more with smaller, more specific servlets/jsp. Like Mike mentioned, you might want to make a JSP or servlet that only handles the rebuilding of a select box instead of one that has to rebuild the entire page.
2.) AJAX function calls run within a browser environment, not directly on an operating system. Some things do vary between browser to browser but there are quite a few, really good, libraries emerging that shield you from these differences. I've been using Prototype lately and it's works very well in all the browsers I've used to
test my code.
3.) Again, AJAX functions are run within the browser. They have no idea what, if any database is being used on the server.
4.) I'd guess that there are more books coming out on AJAX right now than on any other topic in computer science. See our bunkhouse for some of our reviews.