I agree that /oftn/ is probably a spelling pronunciation, i.e. a revival, not a survival of the original. The loss of T between other consonants is normal, e.g. soften, castle, whistle; probably also 'postman' for most of us; though without access to the OED I have no idea what century the T was lost in.

I say /ofn/, and always regarded /oftn/ as substandard (until I become a proper linguist who doesn't make such pernicious judgements hem-hem). Middle class perhaps. On the increase, possibly. I couldn't say which is more commonly used.