First thing to realise is that the MIC socket is an audio output but the audio level is in the order of millivolts because it is intended to be connected to the microphone input on a tape recorder. A microphone only outputs a very tiny signal, so the ZX81 has to output a tiny signal from MIC so that the signal from the ZX81 looks (to the tape recorder) as though it is coming from a microphone. This level will be much too low to drive the AV audio input on a TV.
For your audio output connection from your player to the ZX81 EAR input, what sort of audio cable are you using? You really need one which has a stereo plug at the phone end and a mono plug at the ZX81 end. The cable should be wired so that only one of the two stereo output channels of the player should be connected to the ZX81 EAR signal in, so for example you would have GND in the mono plug connected to GND in the stereo plug, and TIP in the mono plug connected to TIP in the stereo plug, but nothing connected to the middle ring of the stereo plug.
The plug at the ZX81 end has to be mono because the GND contact inside the EAR socket is set quite far inside the socket and will make contact with the middle ring on a stereo plug instead of making contact with GND on the plug.
Even if you have the right plugs and connections there may still be a problem because devices designed to drive headphones often have intentionally limited output levels so that users can not damage their hearing, but this may mean that the audio can not go loud enough for the ZX to be able to 'hear' it. Try using something else, like a laptop, as the audio player just to see if that does work for you.