Hm, if it sometimes stays on then that sounds like a loose connection to me or one of the cables is damaged but sometimes still manages to make contact. I don't know enough about hardware or how electronics react to shock to pinpoint an exact possible cause (or whether it is actually possible to damage a cable just by dropping a unit). The DS will auto-shutoff if any piece of hardware is missing or malfunctioning, which corresponds with the behaviour when it powers off within a second of being turned on.
If it's in warranty, then sending it in may be the best option to avoid risking damaging anything else or in case it's a non-replaceable part. Out of warranty, it couldn't hurt taking a look inside. There is a disassembly guide in the stickies at the top of this forum section which will probably be of some help.
If you have a GBA cartridge handy and their DS is set up to skip the main menu and boot the game straight away try running the DS with that in instead of a DS game. We learnt that when the DS is in GBA mode it ignores the DS hardware (second/touchscreen, slot 1, microphone, wificard, etc), so if it stays on and runs fine then that points to some of the DS specific hardware as the culprit. Although that won't acertain whether it's something you can replace or a problem with something on the mainboard itself, it may help narrow it down.