Let's be completely honest and real here. The BMS is for protection when something goes wrong. If the system is reliable and working properly, there is no reason the BMS protection contactor(s) will ever open. That only happens when a cell's voltage goes too high or low, or the temperature goes out of range. If you system is properly set up with well matched and balanced cells, then a single contactor will be just fine. If some freak thing happens and causes a shut down, then you need to figure out what went wrong and manually reset the system.
On the other hand, if you are using bulk cells that are not well matched, the balance can drift quite a bit. And if you are pushing the charge limits to get the most you can out of them, there are good chances that the BMS may have to go into a protect mode from time to time. In this case, having the two separate contactors can really save you a lot of hassles. Let's say you are trying to charge your cells to 95%, but one cell is a little low on capacity, and it's state of charge creeps up compared to the other cells. The rest of the bank is only at 85%, but that weak cell starts to run away. When that rogue cell hits 3.65 volts, the protection contactor opens. With a single contactor, the system is now dead. It can only reset with manual intervention. The cell might droop down enough to turn back on, but if the charge controller is still putting out, it will just trip out again. With the two contactors and the diode, the relay that can prevent charging will open, but the diode will allow the inverter to pull power from the battery bank and this will pull the rogue cell down and get the system back to a safe state much quicker. You can set the charge recovery voltage a little lower so it will stay off a bit longer and hopefully not need to trip out again, but even if it does, all of the loads ae still staying powered through the second contactor and the diode. You have no interruption to your power, and the solar is actually still powering your loads straight to the inverter. A decent MPPT charge controller will see the voltage climb up and switch to Absorb and/or float mode to regulate the voltage and keep running the inverter and use very little to no battery power. With separate ports, the charge controller would be fully disconnected until the battery comes down.
On the other end, the opposite happens. Let's say it is the middle of the night, and someone left an extra fan running and you had weak sun today, whatever the reason, a cell in the battery runs too low. Again, with a single contactor, you are done. You have to manually reset the system again. With the separate contactors, the charge controller stays connected through a diode and can start charging as soon as the sun comes up. Put too much load on the inverter though, and it may cause a shut down if the solar is not making enough power yet. The separate port does have a little advantage here as it will not power up the inverter until the battery recovers a bit. You could wire the discharge cut contactor after the charge controller to gain this function. That is something a true common port mosfet BMS can't do.