Так работать не будет потому, что 2 анонимные функции не равные друг другу.
elem.addEvenetListener('event', function(){doSomething();});
elem.removeAddEventListener('event', function(){doSomething();});
Чтобы была возможность использовать remoEventListener, нужно addEvenetListener вызывать не с анонимной ф-цией, а передавать имя функции.
Чтобы работало нужно делать так:
elem.addEvenetListener('event', doSomething);
elem.removeAddEventListener('event', doSomething);