The behavior I've been seeing is normally caused by table corruption in the datastore table for vBulletin. The problems posting/adding to the DB are often caused due to this table. It's an easy fix 9 out of 10 times, shut the forum off in the general options so no one can post to the database, and then run Repair Tables in the Maintenance section of the admin CP. You can also use myisamchk if you have SSH access with your hosting plan on the specific tables you find are corrupt. This only works if you are using ISAM tables and NOT innoDB tables though.
I don't want to step on any toes but I've been doing hosting and server admin for quite a while, if you guys ever need anything or just want someone to bounce ideas off of, let me know.
The underlying problem is usually a misconfigured mySQL, I've seen the query time limits often set far too short on a lot of hosting servers cause this over and over, if you can have a look at your my.cnf for anything fishy.