Is there really no way to add edge loops with maintaining geometry ?

I often come into situations where I would need more geometry when modeling using subdivision surface. Maya has a tool for that. It works by adding edges by subdividing but still maintaining the form of the mesh. Here is a link showing how it works: https://www.youtube.com/watch?v=qVX_II7VQxI&t=130s

Yes, once you make the cut you can further refine it, including smoothness, on the tool panel (t key).

Could always work on top of a shrinkwrap, that way the mesh will retain its shape.

Foresight is pretty important when modelling.

You could maybe cut 1 loop where you wanted extra geometry, then use bridge edge loops and control the number of extra cuts and smoothness.