It's probably not the charger, it is probably the BMS not enabling the charge port.
With the charger connected (and then with it disconnected), what voltage do you read on the battery charge port when it doesn't allow charge , vs the voltage on the actual battery inside (not the BMS)?
And what voltage on each of these do you read when it does?
Correctly-designed chargers usually have a detection circuit for how much current is flowing from them to the battery, and a lower limit on how much current can flow, below which the charger turns off. (this is why it turns off when charge is done).
If the BMS charge port is off, current can't flow so the charger won't turn on (or will turn on for an instant then back off).
The charger may also have a safety for a minimum voltage before it will start charge, so if the port is off it won't read the battery voltage, and so won't turn on.
As a test you can connect the charger to the battery's *discharge* port instead, when it does not work on the charge port, and if the charger starts up this tells you the charger is fine but the BMS has not enabled the charge port. You don't want to keep charging this way, but just for a momentary test it is ok.
The BMS might be disabling the port because it detects a problem such as cells that are too different in voltage from the others (some do this for 0.1v difference or more). Normally this difference gets worse the further discharged cells get, but that couldn't be the case for yours or it wouldn't enable the port when the battery is empty vs half full....
So, I don't know why it would be doing this, but that's almost certainly the BMS vs the charger.
FWIW, I have a Luna mini pack from a long time back that has a BMS with some funky bug in it's firmware where it does something similar to yours, but it's problem is when the battery is just barely discharged, nearly full--it won't charge unless I discharge it a bit more first. (not very much, just a little).