Please help me understand: As far as I understand it, when an object gets thrown off the surface of a planet by an impact and doesn't reach escape velocity it is on a suborbital trajectory and therefore will impact on the planet eventually. If that is true, how can debris from an impact reach a stable orbit? How can the periapsis be higher than the point of the impact?
You are correct that if a single object is thrown off of a planet that it will either escape, or else return to that object, that orbiting isn't a solution. The way that an object can orbit is by interacting with something after it has launched. For instance, it might pass close to another large clump that will use gravity to change it's path. Another solution is that it could impact another object, causing it to enter an orbit.
The third solution is that the impact could change the orbit of the host body itself. I believe this is what was actually done in the case of forming the Moon. Also of some note is that the velocity transfer isn't an instantaneous value, but rather happens over some period of time. The periapsis can be as late as the latest change. So for a side impacting asteroid, much of the speed will remain even after it has left the Earth's surface, and will continue to accelerate pieces that went ahead of the event.
To see how this could actually happen, take a look at this paper.
You can actually have this happen in freespace. (I.e. no other bodies.)
(Imagine the following in 2d, to make things easier.)
Imagine you kick off a rotating piece of debris "North" at somewhat under escape velocity. Then somewhere near apoapsis it breaks into two pieces - one flung "West" and the other "East". The two pieces each end up with enough tangential velocity to form an orbit around the parent body.