That looks good to me.
Basically - you can’t. The purpose of including power1pluspower2 in the transmitted data was to remove errors that result from the two separate values being received at slightly different times - the result of that was one could be used in one calculation and the other in the next, leading to discrepancies and inconsistency.
I don’t have a working emonPi, so I can’t experiment and help and more than that, I’m afraid.
If you’re willing to delve into the Arduino sketch serving the analogue “emon” part of the emonPi, then you could put the minus sign in there and have all three powers correct. That might be a “better” solution but one harder to implement - plus you’d have non-standard software which might haunt you at some point in the future.