From what I can understand from what you are saying, the fees is based on the numbers of transactions and not based on the total amount.
But I still need to read more to understand further.
Indeed... If i get a single input of 1000BTC (~$450.000) from a stranger, and i use this single input to create one output, the transaction size will probably be really small (one input -> one output = not a lot of "text"). The fee would probably be a couple cents.
estimated size: 180 * 1 + 34*1 + 10 = 224 bytes
fee to get included in a block really fast: 30 satoshi's per byte => 224 * 30 = 0.00006720 BTC
If i get 1000 inputs of 1 bitcoin from a stranger, and i use it to create one output, the transaction size will be much larger (you can use this post to do an estimation: https://bitcointalksearch.org/topic/estimating-transaction-size-in-bytes-124302). The fee would be a lot more.
estimated size: 180 * 1000 + 34*1 + 10 = 180044 bytes
fee to get included in a block really fast: 30 satoshi's per byte => 180044 * 30 = 0.05401320 BTC
you can use this page to see how much fee per byte is advisable, and how long it will take ON AVERAGE for such a fee to be included in a block:
https://bitcoinfees.21.co/
EDIT: estimations done in red
As you can see by my estimations, both transactions sent 1000BTC, but the first transaction only included a 3 dollarcent fee, while the second transaction included a 25 dollar fee... Both should get the same priority by the miners because they both payed 30 satoshi's per byte... The only difference was the ammount of inputs. Translated to your situation => if you have a lot of really small inputs, the percentage of the fee you'll need to pay rises really high.
EDIT2: also not this fee will stay the same if you create a single output of 1000 1BTC inputs, or from 1000 0.1BTC inputs or from 1000 0.0001BTC inputs. the size of the output will offcourse differ, but the fee stays the same.