간단한 테스트만 했습니다. 오차는 감안하시고…
var length = 100; // 원하는 미터(m) 값
var pixelDist = length / Math.pow(2, map.getLevel() - 3);
var unitVector = [ 1, 0 ]; // 원하는 방향의 단위벡터
var diff = unitVector.map(function(e) { return pixelDist * e });
var point = map.getProjection().containerPointFromCoords( marker.getPosition() );
point.x += diff[0];
point.y += diff[1];
var target = map.getProjection().coordsFromContainerPoint(point);