The answer is simple - Windows 3.x had lousy DOS performance because everything in Windows 3.x - every button, scrollbar, droplist etc. etc. had a "handle", a footprint in conventional memory - also because the file system was still based on DOS, so file access required a mode switch (this is what did in OS/2 1.x, because the 286 could not easily go back and forth to and from protected mode). This issue almost killed Windows 95 out of the gate, and was only ameliorated at the last moment by a (very ingenious) kludge. Again, the entire point of Windows 3.x was to be able to run as well as could be hoped on a low memory machine with primitive graphics.
Comparing OS/2 2.x and Windows 3.x is not proper on any level, because the former is a real preemp-tasking OS, while the latter is an elaborate shell for a DOS extender. The only proper comparison is between OS/2 and NT, and we know who wins that one.