We've come up with a solution to the problem.
It consists of 3 separate steps:
first, the initial jQuery item must be created:
var item = $.create("div");
then create an instance of the javascript object you want to create and copy all of it's functions and properties to the jQuery item:
$.extend( item, new foo.bar() );
Finally, initialize the object. Note that the constructor in previous step cannot be used for this since the "this" object is different.
item.initialize();
After this, the object $(item) can be used like a regular jQuery object, plus it has functions and local variables like a regular javascript object.
item.doSomething();
var offset = $(item).offset();
So you can make DOM objects that have a "class" that can be used by jQuery.
BTW, we used DUI to create namespaces.
Hopefully someone will find the solution helpful. It made our code much nicer.