Well, 2d probably looks jerky, because it doesn't interpolate between pixel. 3D does this, so you will get smoother scrolling with that. Also, try upping your refresh rate on your monitor. Maybe that is causing problems. Maybe also, you GFX drivers are being forced to wait for v-sync before continuing.
Try and do what i suggest. Time how long it takes to draw everything, then in the next loop time the rest of the code execution and wait the correct amount of millisecs before you render.
Try and do what i suggest. Time how long it takes to draw everything, then in the next loop time the rest of the code execution and wait the correct amount of millisecs before you render.