5. I will divide my Bitcoins into 40 accounts and send Bitcoins to all these addresses - I will create these all addresses at once carefully and after creating all of them, I will send the Bitcoins one by one to each account. Does this sound wise? Or is it better to create one public key, sending Bitcoins, creating another, and sending to it and another.... And goes on.? Which one is better?
You want to minimize the number of transactions per address. For one thing, the transaction fee is a function of the number of bytes in a transaction. So keep it simple. This principle applies to funding the cold storage addresses you create in your brain wallet or paper wallet, and even more so to the spending of it -- because you don't want to make a mistake with the change.
For savings (long term cold storage) make as many addresses as you want, but fund each address only once. And when you spend, the best policy is to spend the entire amount in the address so you avoid problems with change going astray.
Put simply, for each address: fund once, spend once.