As I mentioned previously, you could leave the line items out of the PayPal payment and just sent them the order total to process. That would eliminate this problem.
If you want to keep the line items then you'll need to add some logic to change it up so the math works with whole numbers. For example, if you're showing QTY 1.5 @ $40.00, just make it QTY 1 @ $60.00 instead, or QTY 2 @ $20.00.
It's very rare for people to use QTY's like you're trying to do here. Even when charging for time people typically do 15/30/60 min increments, in which case you could price per unit and the whole number QTY would work fine.
You're working with the Classic APIs, which are being labeled as deprecated. They aren't going away, and you can still use it as-is, but they aren't going to be actively changing anything in them either. I have not yet tested the REST APIs to see if they would accept this, but I doubt it.
Sorry I don't have the answer you're wanting. Come to think of it, though, I don't know that I've seen any payment processor that accepts decimals for quantity values. That said, I don't specifically try it all that often, so maybe I just haven't come across it yet.