The minimum transaction fee is proportional to the size of the transaction data. Assuming you are making a typical transaction and are not using custom privacy levels, then the minimum transaction fee depends on the number of inputs being spent. The number of inputs being spent is a consequence of the size of the stray change outputs and the size of the typical transaction amounts you receive relative to the amount you're sending. It's not easy therefore to correlate the number of inputs being spent to the amount being spent in a transaction. The fee can be increased to give the transaction higher priority. You could argue that high value transactions are more likely to be given an expensive fee because the transaction is more important. This is a weak correlation though. The main thing to note is that there is no rule that requires the fee to be proportional to the amount being spent, so disclosure of the fee does not give away much. Disclosure of the fee is necessary, because miners need to know what fee is being offered in order to decide whether the fee is enough to allow the transaction to compete for inclusion in the next block being mined.