Preserving UV coordinates after Boolean Union operation

Hi!

I’m having trouble with a boolean operation preserving texture coordinates. Here’s a simple example.
I have 2 lowpoly objects UV mapped and they’re using the same texture:

Left shirt:


Right shirt:


When I do boolean union operation with booltool (or with regular boolean modifier, same results), the resulting mesh has proper texture coordinates and all is fine.

However, when using these 2 models, I get one of the UVs warped after using booltool or boolean modifier. Which one gets warped, depends on the order of selection.

2 different pants objects and the result after boolean union:


I’m going to have a lot of textured lowpoly objects that are all going to be joined together into a 1 solid mesh forming a huge miniature model of a shop that’s going to be 3D printed. Therefore I’m going to build the whole scene up in a way that everything is connected and final result is 1 uniform shell. Of course I could go back and redo the UV’s for the bad parts, but that would require a lot of time doing something that I’ve essentially done already.

Edit:
Example .blend
https://drive.google.com/file/d/0B1Wu9sqZNqCpQmRaN0dnTFNZaW8/edit?usp=sharing

Any thoughts?
Thanks!

Any thoughts?
My initial though is “how useful would it be for someone to maybe help you if you supplied a blend file and texture to look at”

My apologies, here is the example file
https://drive.google.com/file/d/0B1Wu9sqZNqCpQmRaN0dnTFNZaW8/edit?usp=sharing