yes, there is,
Open your recolor and click the propertyset on the left and right window.
Lookup the subset line for the top and change the name(top) into jacket(or watever

)
click commit and save.
Open your mesh with milkshape and change the top in the commentbox also to jacket.
Reload your mesh(gmdc) in the meshpackage and your done

Somehow the game combines the textures from the top and bottom seperates and it also lets the toptextures overrule the bottom ones.
Renaming the subset will solve this

However.........been a while...
I am not 100% sure on that if you change the subset name the skintone still covers the spots that are not textured.
you have to check that.(i think it will work as long you dont change the TXMT settings.)
If it doesn't work then you have to add a subset(like the multi's)
you regroup the neck and hands and keep them as top and make a new subset for the jacket.
here's a example:
http://www.insimenator.org/showthread.php?t=91383this mesh has 2 extra subsets, both for the jacket but one seperate wich is a alpha.
another tip when your satisfied with the mesh.
copy the lower part of the jacket(select the faces) and revert them.
hide your original jacket and alligne the normals on the copied part.
Name that copy exactly the same as the jacket, you now have the inside of the jacket also textured.
Or make a new subset if you want to texture it diffrent.
