Honestly, I am very often with Ctrl-C and Ctrl-V when sending bitcoin to exchange or vice versa from exchange to my wallet. I usually make a few small attempts before sending like the points you say (check carefully).
The question is, if we scan a barcode it directly from the exchange can also be changed by malware ?