Before I say anything else, I must point out a few disturbing things.
First, this line:
__glModelReferenceClass__& operator(int index){return __glModelReferenceClass__(win,index);}
Should have been flagged with a compilation warning (if not, increase the warning level to the maximum, as you always should). This function returns a non-const reference to a temporary object. You shouldn't do this, it has undefined behavior, and even if it works, it doesn't mean it's OK to do it. Moreover, there is no need for a reference here, just return it by value (generally proxy-classes should be passed around by value because they are semantically just wrappers for a pointer, a reference, an index-container pair, etc.). Just do this:
__glModelReferenceClass__ operator(int index){return __glModelReferenceClass__(win,index);}
Second, you use the double underscore naming convention quite a lot. I don't know where you picked that up, it is not only illegal (at least for global identifiers as you have there) because names with leading underscores are reserved for the compiler-vendors, but it is also horrible readability-wise. If you want to distinguish your class names from other class names (like glWindow, not interfering other possible glWindow names) then use a namespace, that's what they're for, and you should use a namespace to encompass your code.
Third, when it comes to operator overloading, you should not overload operators in a way that breaks the semantics of the operator. An addition operator is supposed to perform an addition, not an insersion or concatenation or whatever your += operators are doing. In C++, the idiomatic operators that can be used to do such things (if you even should be using operator overloading in this case) are the << and >> operators (in the same way a iostreams), and the also have the nice property of being left-associative which allows you to make those nice looking chains like with iostream. I highly recommend that you use that operator instead, and that you make them friend functions instead of member functions. Also note that the += operator (and similar operators) are right-associative which will make the chaining of additions of vertices very weird (either in reverse order, or with an abominable number of parentheses).
Now, to solve your problem, In most cases, for this type of proxy classes, you can just make it a nested class. I can't really tell if you need the proxy class to be nested in "glWindow" or in "__glWindow__", that's for you to see. Also note that in your code, you don't really need to forward-declaration because the "__glModelReferenceClass__" class doesn't need to know about the "glWindow" class, only that other "__glWindow__" class. Frankly, I think that the whole design seems very awkward.
I assume that your __glWindow__ class contains a bunch of models, and that each model contains a bunch of vertices (with normals, texcoords, etc.). My understanding is that your glWindow class, given an index, returns a proxy to the model in question, which can then be manipulated via the proxy (to add vertices and so on). I would say, skip the middle-man, i.e., the proxy. The alternative I would suggest is simply that the glWindow class returns a reference to the model at the given index, and the model class itself should have to necessary functionality to be manipulated directly. That would be a lot easier and clearer to the user, and simpler to program, and more flexible. This simpler architecture makes it clear that a glWindow contains a bunch of models and that models can be manipulated in a number of ways. The way you have it tied up now is very circumvented for what it does.
N.B. If you have trouble with the fact that definitions of related classes are very far apart, making the reading of the code difficult (because you have to scroll back and forth into different sections of the code to understand the whole thing) then it probably means that you have classes that are too monolithic (huge classes that do a lot of things instead of small classes with clear responsibilities), and that is a design flaw in general. If it has to be that way, then use documentation to your advantage, learn to use doxygen and generate useful documentation with it.