"Есть ли приемлемый способ сделать подобные вещи"
Да. Бухгалтеры делают это постоянно.
Действительно, COBOL делает это очень хорошо.
В пакете Python decimal
есть несколько параметров округления, которые вы устанавливаете в контексте. Почти всегда параметры decimal.ROUND_HALF_DOWN или decimal.ROUND_HALF_EVEN - это то, что вам нужно в вашем контексте.
При создании подобного программного обеспечения для управления розничной торговлей будут действовать корпоративные политики, управляемые реальными бухгалтерами, которые определяют, что следует делать.
Спросите бухгалтера, который работает с этим видом деятельности, какова политика.