thats most likely a contact issue, had this on many computers.
most usb problems are contact related - one possible problem could be "low voltage" related - measure the voltage of the usb port with a multimeter (and in your case i'm pretty sure that you have at least one of them) - use [http://pinouts.ru/Slots/USB_pinout.shtml|this pinout].
the other problem is that the contacts are "worn out" - or better, simply a little bit bent and not able to close the contact when you plug in an usb device.