Blender UV unwrapping non-uniformly
First of all, to unwrap only a part of the model you have to select the faces first and then unwrap them with whatever method you want, if you select everything it's going to unwrap everything. 

I think the main problem here is that when you painted the texture, the UVs where placed in a certain manner and by unwrapping again after you were done painting you basically moved your UVs so the colors you painted before are not corresponding anymore to your model. I've put these two images below to explain better what I mean: I moved two vertices on the UV and the whole front face looks very different, this is basically what I think happened when you did the second unwrap.




At this point I see two ways you can solve your problem, either you adjust the UVs yourself by moving, scaling etc. or you keep the UV like that and paint another texture for it (create a new image just to not overwrite the one you have, you never know), maybe by painting directly on your model in Texture Paint mode. I know it is a pain to do something like this all over again (I've been there) but as far as I know these are the quickest options you have.