You can try create a getListeners() method for your object:
Ext.define ('MyObject', {
...
getListeners: function() {
var me = this,
l = {};
for(var event in me.hasListeners) {
Ext.each(me.events[event].listeners, function(listener) {
l[event] = listener.o[event];
});
}
return l;
}
});
...
var listeners = obj.getListeners();
obj.destroy();
obj2.on(listeners);
See on jsfiddle: http://jsfiddle.net/8GMsp/
Note: I have not tried to use it in a real application. May be require revision.