I can’t answer all your points but:
Purchase invoices don’t include numbers or unit cost. There is a feature request outstanding at Purchase Invoices - Quantity Field and you should add your vote there.
The currency field wants pure numerics. That would be the same in any database.
Purchase invoices don’t have a facility for zero value lines. You can start a feature request for this if it is a serious issue. QF do take feature requests seriously but it needs a body of support to be given any priority. (Sales invoices do allow zero value lines but not a zero total)