Map editors (like Hammer and Radiant) store texture coordinates using a set of axes, which are used to "project" the texture onto a surface. As I understand it, this was originally done to conserve space in the Quake 1 BSP format, since these axes are expressed as a two vectors with three components, X Y and Z, and two more numbers for the shift on each axis. Therefore, the texture alignment for an entire surface could be stored in eight floats, rather than as a set of UVs for every vertex on the surface, which is a small amount of space saved for any surface with more than four vertices. The UVs for each vertex would be calculated at load time instead. This could be done fairly quickly without increasing load times too much, by doing just a couple dot products for each vertex. These texture axes were copied almost exactly from the MAP into the BSP when compiled. This is the case for Quake 1, Quake 2, GoldSrc and Source engines.
The one exception is Quake 3 and engines based on it. Starting with Quake 3, UVs are stored directly in the data for each vertex, but Radiant is still using texture axes. A vector dot product isn't really an operation that can be done in reverse, but even if it were, there's no direct path to the surface definitions for a brush when you're looking at brush data in the BSP (unless you're looking at a BSP from Jedi Outcast or Soldier of Fortune 2). The fact we can get a texture for the brush at all is only because the texture is referenced. Patches come out fine because they are stored quite differently. They simply exist as part of the world (you find them by simply searching through every face in the map), and the data can be copied almost one-to-one from the BSP into the MAP. Radiant even expects the texture coordinates as UVs.
Doom 3 and Quake 4 are completely separate from any of this, since they don't use BSPs at all. Maps are stored in an uncompiled format. Really all you could want to do is convert them for an earlier engine.
That's a lot of text, and I realize it can be a bit dense if you're not familiar with some of the ways graphics hardware renders 3D scenes. It's not really as simple as "brushes are special" so much as the way Radiant expects texture coordinates is very different from how they're stored in a BSP in Quake 3 engines.