I'm doing a lot of data gathering based on voltage controlled partial charging. What I've seen is not unlike what you describe. I've found things like this in the log files that may help to explain it. There are two different SOC modes and when they change so do the numbers. I can say that voltage is not a perfect SOC indicator. I've seen the voltage increase when SOC is decreased, due to temperature I think. And the voltage changes over time after charging while the SOC is not changing.
09060 08/29/2017 21:45:39 DEBUG: Switching to coulomb couning SOC mode. SOC: 60%, VSOC: 61%, I: -2943mA
09061 08/29/2017 22:41:57 DEBUG: SOC off by over 5%, adjusted from 70% to 79%
09062 08/29/2017 23:27:52 Charged To Full 003 AH, SOC: 89%, L:4024, H:4027, B:003, PT:027C, BT:037C, PV:112737
09063 08/29/2017 23:41:30 DEBUG: SOC off by over 5%, adjusted from 91% to 97%
09283 08/30/2017 18:18:32 DEBUG: Switching to coulomb couning SOC mode. SOC: 80%, VSOC: 75%, I: -7892mA
09284 08/30/2017 18:19:30 DEBUG: Switching to coulomb couning SOC mode. SOC: 80%, VSOC: 78%, I: -22073mA
09285 08/30/2017 18:22:39 DEBUG: Switching to voltage SOC mode. SOC: 82%, VSOC: 81%, Ihall: -401mA, Iext: 0mA
09286 08/30/2017 18:23:40 DEBUG: Switching to coulomb couning SOC mode. SOC: 82%, VSOC: 80%, I: -5351mA
09287 08/30/2017 18:38:54 Charged To Full 002 AH, SOC: 89%, L:4027, H:4030, B:003, PT:031C, BT:042C, PV:112769
09288 08/30/2017 19:09:33 DEBUG: Switching to voltage SOC mode. SOC: 100%, VSOC: 100%, Ihall: -1605mA, Iext: 0mA
09289 08/30/2017 19:09:52 SOC adjusted for voltage old: 173418uAH (soc:100%), new: 0uAH (soc:100%), low cell: 4147 mV