That's what I had in mind, thanks for writing this down precisely.
My latest concern is that when I'll do this:
Then, loop through the vins and do another lookup on each of them
bitcoind might complain that it cannot find the transaction (as it is not linked to my wallet addresses in any way)
I couldn't test yet if it works, if it works only with "txindex=1", if does not work at all (I fear once all outputs are spent the information won't remain anywhere locally)... I'll try soon.