Единственным решением видится использование cookies: в первом окне куки ставится, во втором идет проверка по интервалу, и если кука появилась - что-то делаем.
var obj = (function(){
var myvar;
window.map.on('draw:created', function (e) {
myvar = "foo";
});
return {
getVar: function(){
return myvar;
}
};
})();
window.map.trigger('draw:created');
console.log(obj.getVar());
Переменная myvar объявляется в функции и не торчит наружу. По наступлению события ей присваивается значение и она хранится в замыкании, откуда мы ее получаем методом getVar.