This does sound a lot like a hardware issue. There is one thing that you can try to check if it is:
Try a retails DS cartridge.
DS cartridges run in a completely separate mode from 3DS stuff. They even use their own hid (human-interface-device) routines. Now, if the problem persists in DS mode, you've got a hardware issue, and you need someone to fix it for you (Google will help you find tutorials on how to do that). Otherwise it is a software issue (in that case, it's best to just restore an older backup).