In some ways I think the code is very well structured, and in others not. I think the structure has the "best intentions" at heart but in some cases is goes way too far.
For example, the way the functions in the theming engine are diluted right down to outputting single words is silly. The voting function outputs some wrapper code, then called voting_inner_html, which itself calls functions for displaying the arrows and vote count, and those each call several functions too. How many functions do you need to display a single number?!
PHP 4 is still in fairly high usage, although that doesn't stop you using an OOP structure. Don't know if it's really necessary, although I can see a few places where it would work well. Even a static class for the methods in 'qa-util-string.php' would be a benefit.
Totally agree about jQuery - the library really isn't all that big and as you say it opens up a new world of simple features like AJAX for comments, answers, etc. The Javascript use will surely increase so why not convert to jQuery now while you can and save development time in the future?
Actually on that subject, one thing I would love to see changed is the reliance on POST for starting actions like adding answers. Seems silly to do a whole POST request just to display a form.