You can look at the receipt of the transaction to verify the data yourself. The web3.js library's sendSignedTransaction will return a receipt that you can check to verify the data.
Edit based on goodvibration's comments
My original answer was as follows:
A signed transaction cannot be altered, as the data within the transaction has already been signed. If ...
If a transaction is reverted at any point in the transaction, the whole transaction is reverted. In this case, .sub(amount) will revert if amount is larger than the allowance, so the token transfer will be reverted as well in that case.