Uhm I thought I made a reply but evidently I didn't.
Basically, you're asking how I actually built the transformation matrix for centering around the cockpit, well, I just did what I could to build the inverse matrix for the hovertank's perspective. I'll just post the code that does the work
As per rendering the cockpit, well, my models are low poly enough that I just render the whole thing and let GL take care of it (manually clipping away, as you said). However, if I was being real strict, I would render the cockpit (in object coordinates) from every possibible perspective and list the faces that get rendered. But, like I said, I don't do much with fancy graphics/shaders etc so rendering speed has never been an issue (the code runs at 100.0f FPS constantly, which is the target for the physics).
Matrix3x3 invert = pTest_Hovertank->CurrentState.mMat_Orientation;
rot = invert;
Matrix4x4 final = rot*trans;