I think that emulating an NE2000 was a pretty neat trick, and doing it (along with everything else) on such minimal hardware is pretty cool too.
While the NE2000 is nearly universal, it has configuration registers and other complexities to deal with. Have you considered a stripped down version of the code that doesn't bother with all of that? It would be similar to what the virtual machines do when they provide a general network interface; it's simpler and cleaner because you are not trying to emulate something specific. It would require a new packet driver, and that would also be smaller and simpler than the existing NE2000 packet driver.