I know this is an old thread, but I think it is still very valid.
Recently a customer asked me about the same problem as stated by GoldBuckle, I think a new variable should be introduced
- decimal places for viewing, set per currency
- decimal places for calculation, set in only place, or make it fixed at 4 like the database value (preferred by me).
I do not think it is a quick fix, in a search through the files I found "decimal_places" mentioned in 10 files. Going to investigate.