The sessions table as you can imagine is like the gatekeeper to the forum. Before you can do anything (log in, view thread, post, create PMs), it goes to the sessions table to see what your status is. Due to the design of MyISAM, anything that changes in that table locks the whole thing, not only to other writes but also reads. You can see how this can be quite catastrophic then when it decides to lock for anything more than a few seconds, literally no one can do anything. InnoDb removes this and things should run a lot smoother.
WRT to the backend design, not a lot we can do with that, its phpBB's remit. But going by fact there are bigger forums out there using it, we should be ok. They are all using InnoDB which shows us its the right way to go