Unlike, say, hydrocarbons.
No, much like hydrocarbons.
Rock is much too porous for them to have been contained for hundreds of millions of years under the pressures that we find. That pressure would have dissipated long ago.
Can you even conceive of the difference between *knowing* how old something is and 'believing' how old something is?
Rocks are, typically, porous, but not so much clays and shales are only slightly so. Putrescine is found in all cells and especially bacteria. The presence of putrescine does not mean that the sample is either old or young. As an amine it would have a long half life under anaerobic conditions and may be therefore quite old (yes that could be millions of years), but it could also be quite young if there is significant ground water and something for bacteria to chew on, because the porosity of rocks, especially sandstones and limestones allows not only liquid organics to penetrate but also bacteria. It may only be a week old. Indeed if the material is "floating" on water, like most pertoleum deposits, then it could have been formed anywhere and at any time and just migrated to its present position, the same as liquid hydrocarbons. The presence of coal nearby is also a possible source of biogenic putrescine.
So..... I guess your are all right.