Is the unit producing the sound attached to the viewport or to the 2D map?
In the viewport mode, zooming in/out is just an illusion as it's the mapper cam (not the main camera) which moves to/from the 2D map and the scales of the units on the viewport are adjusted accordingly. But in world space, the distance of the unit from the main camera doesn't change. It changes when you pan around. In this case, yes, there's an actual distance change from the 3D unity to the main camera as it moves off the screen.
Your pointer is correct - adding the AudioListener to the MapperCam AND the audiosource of the effects to invisible markers to the 2D map on the same position than the corresponding units. It's a workaround of course, but in that case the distance used by the AudioListener will be correct at all times. You could add an "Audio" gameobject children to your unit prefab and attach a script to this "audio" gameobject (which will be emitting the effect sound) so its position is updated automatically to match the 2D map, instead of the viewport.
For example, the MapPopulation demo scene uses a tank prefab that you can drop and move around. We can edit this prefab and add this "2D Auto Marker" game object. It's an empty gameobject with a simple script:

This is the script:
using UnityEngine;
using WorldMapStrategyKit;
public class Auto2DMarker : MonoBehaviour
{
GameObjectAnimator goa;
void Start()
{
goa = GetComponentInParent<GameObjectAnimator>();
goa.OnMove += Goa_OnMove;
}
private void Goa_OnMove(GameObjectAnimator anim) {
transform.position = WMSK.instance.transform.TransformPoint(anim.currentMap2DLocation);
}
}
The script gets a reference to the GameObjectAnimator component which is added by WMSK to all units added to the map.
Then, we listed to the OnMove event of the GameObjectAnimator which tells us the unit has moved so we move our position as well to the correct position in the 2D map (the 2D map is always the WMSK instance itself, the viewport is just another gameobject).
Now, you should have an invisible gameobject linked to your unit which is positioned at the correct location to be used with AudioSource componet. Attach this AudioSource to this children gameobject and use it to play the effect sounds.
You will also need to move the AudioListener to the MapperCam from the Main Camera.