I've been considering using Google Tag Manager to help upgrade my site to Universal Analytics. However, the main issue is that tracking Revenue and Ecommerce is hugely important, but implementing a Data Layer seems to be the only way to do this through GTM. Is it absolutely necessary for me to implement a Data Layer in order to track those stats via GTM or can I still use the hard-coded Ecommerce code alongside it?
It is possible (altough I'm not sure it's a good idea). You need to be careful, though - the tracker created by gtm is a named tracker (with an arbitrarly named tracker that starts with gtm..). The tracker in your ecommerce conversion page is probably the default tracker (named t0) and will start a new session, even if it tracks to the same property.
So in GTM you would need to go to your analytics tag, tick the checkbox "Set tracker name" and either leave the name field empty (in which case GTM will use the default name t0) or set a name both on the GTM tracker and your hardcoded tracker (probably better than relying on undocumented behaviour).