You've pretty much got the gist of it -- OBJ export was built into OpenSceneGraph, and we lost that capability when we switched from OSG to Ogre. I've done all sorts of searching, but Ogre doesn't appear to have any sort of object exporting capability, or at least it didn't at the time. Eventually I just gave up and figured I'd have to write my own OBJ exporter when I got around to it.
This would be a lot more complicated in Ogre; in the early OSG versions, I was generating the entire embark as one enormous mesh. The Ogre version uses PolyVox to extract meshes in chunks, sort of like how Minecraft works. A custom exporter would have to walk through each chunk and save it out to the OBJ, and possibly repair any seams or whatnot.
Anyways, things were overcome by events, and I never got around to writing this exporter. Unfortunately I can't really answer any to of your four things; as far as I know, there isn't any way to export OBJ files from 31.25+ forts. This is definitely the thing I miss the most. Sorry I don't have a better answer for you!
EDIT: Thinking for a bit, your best bet is probably to try to resurrect the OSG version. You'll lose vegetation, and the ramps will be sharp 45 degree angles instead of smoothish, if that's okay. The source for the OSG version is
here. DwarfGeometry.cpp needs to be updated to read in from DFMap files, as is done in
the Ogre verion's LoadingState.cpp. Most of the stuff you can ignore, since for a 3d printer target you don't care about texture, plants, or any of that stuff -- just tile shape.
Specifically, it appears that
this logic primarily exists to populate the
tiles array. Theoretically you'd just have to fill up
tiles with data from the .dfmap file, delete all the unnecessary calls to obsolete DFHack functions, and replace the calls to things like DFHack::isWallTerrain with checks against the protobuf's
TileType.
It'd be quite a surgery, but it should work. Although now that I've written it all out, I'm not sure if that would be more complicated than just writing an OBJ exporter for Ogre or not. Do you know C++?