Emulator vs. simulator in the context of EE
I disagree that the terminology is used inconsistently.
The key is what you are trying to achieve. A simulator tries to simulate (in electrical engineering this is usually based on our mathematical and physical understanding of underlying physics) how a certain device, code, machine, etc will behave. It uses the internal structure of a model to give us an estimate of what that model will do based on the inputs provided to the simulator\$^1\$.
An emulator doesn't model the inside (necessarily, you can do hardware emulation by simulating the hardware, with something like Cadence's Palladium series of emulators).
What an emulator seeks to do is to model to the outside world what we think/know the inside of a black box will do. A processor emulator will not necessarily simulate every transistor inside to see how it behaves. It takes a known behavior and emulates it for the outside world to interact with. A software emulator might emulate all the responses of a different operating system or architecture, so you can a program compiled for OS A or architecture B on a different OS or architecture.
A CPU such as seen in hardware design will model how the outputs and inputs of a CPU/micro controller might behave, without having to simulate the insides.
\$^1\$ note that these inputs must not be inputs in the classical sense of 'current flows in here' or 'a force is applied this way'. You can also do things like eigenmode analysis in a lot of types of simulations to study the resonances of a device, without requiring an external input.