Its a no brainer....oil cooler.
Consider this (and then you will be able to question any garage who says other wise)
On a head gasket there are
1) Lots of pressurised coolant ways
2) Lots of oil return ways, these are LESS than atmospheric pressure due to the engine breather system.
3) One small high pressure oil feed which is quite some distance from any of the other bits.
Then consider how a headgasket fails....its often due to the composite material failing (due to in-correct anti freeze mix generaly) which results in the main fire rings losing support and being pushed outwards, around the fire rings are water passages and the result is a pressurised coolant system and water in the cylidners.
Its pretty much impossible for the high pressure oil feed to fail into a water way....and if the gasket failed between the coolant and the oil return ways then you would get water in the coolant... (remember that the coolant pressure is much higher than the crank case).
The symptoms you have do NOT fit the above.
In the case of an oil cooler failure you need to remember the following:
The oil is high pressure in the cooler as it is after teh oil pump and filter. It sits in a bath of coolan which is also pressurised under normal conditions. The oil pressure is higher than the coolant pressure so with the engine running you get oil mixing with the water, this get stirred up and creates a mayonnaise...
So, how do you get SOME water in the oil.....elementary.....after turning the engine off, the oil pressure drops but, the coolant remains pressurised so some coolant now gets into the oil....not much mind but some.
Hope that helps...
As a guide, oil cooler is about 80-90 quid plus about 40 ish of extras (oil, filter, antifreeze, seals) and takes about 3 hours plus a coolant system flush.