You will have a problem none the less, even if you do castrate the one dog or both they will always fight over the female, and all it takes is one of the dogs to nip at the other one and you have another fight or the female to nip at one of them.
The fact that they have had a fight they will also be an issue from now on, the behaver is set in stone, there pack states has been messed up now. So it wont help.
You either have to put the one dog down or get rid of it or you need to separate the dogs or get rid of the female or sterilize the female.
Ok, this is our pack in our neighborhood, Milio and afleck are top dogs in Hood, Afleck is 1st in commond and is castrated malio is 2nd and is not.
there is one female next next door to us, she comes to visit every night and some times during the day, when she is on heat all dogs from the hood come to her house and end up in our yard.
Even though afleck is castrated he still try to do the thing and he still wont to kill the other dogs if they nip towards him or milio.
If you castrate a dog early enough then a female on heat wont bug him, but if you do it to late in the dogs life you will always have a problem.