Are you sure the shifter cable/linkage isn't bent/binded up somewhere? Hard shifting of the lever itself, would seem that somehow or another the cable got FUBARED. That may also be why it want's too stay in third, as it might be stuck inbetween 3rd and drive.
These are my guesses! Hell I dont even know if there is cables/linkages. For all I know the computer does everything.