It's funny, keeping everything else constant, the center conductor can move quite a bit away from the exact axial center of the shield before the impedance changes very much.
You could fork a "forker" process, early in the program and use pipes to make it do what you can't later in time. socketpairs if you need to send descriptors as well.
closefrom(2) is nice bsdism, btw. After setting up stdin, out and err, just closefrom(3). For the same money, it could have been designed to close a range instead, odd this was not selected.
I've found a solution to keep most "cabley things" in order. I keep them straight, high up the wall, in a 2m wide hanger made from 1x1 wood.
Hanger is high enough for mouse & cord, wall wart & cord and so on. There are conical holes, every inch, deep ones on the left and successively shallower on the right. Far left holds RG-8 with connector nicely, or most power cords, and far right fits 3.5 audio plugs, mini-usb, etc. Holes are 1 inch apart and opened with a slit from the front. The slit gradually gets narrower from 12mm on the left to 3mm on the right.
It's hard to misplace things, as each cable only fits into certain area, and shirts or headphones or ... are not easy to insert into the hanger at all.