You really don't need to use lots of cash. Most locals deals in credit cards for everything, they are a lot safer. Sometimes even hotdog carts accepts credit cards, Taxi/Uber will gladily accept credit cards. Just keep R$ 300,00 in your pocket/day in case there are too many tourists queuing in an ATM or for small expenses like bus tickets or popcorn.
ATM limits - Yes there are limits on the amounts you can withdraw. They can range from R$ 500,00 to R$ 1.000,00 for example depending on you credit limit/banck etc. Those limits are for your safety. When ATMs arrived many years ago assaults and "lightning kidnappings" started to go epidemic so a limit strategy was one of the solutions. Note also ALL ATMs are sheltered and some will also got working hours (no late night withdraw in some neighborhoods). ATMs in safe, 24/7 places like airports are ok.
Most banks don't charge for witdraws. They will charge if you use a multi-bank ATM like this. Every bank have a lot options for accounts. Each one will get a different limit, fee and number of free operation. If you still interested you need to contact each bank.
Making expenses in Reais means you will pay an official exchange rate at your credit card payment date that mean you will save a few dollars.
If you knows portuguese enough or get the luck of getting help from a bank assistent (there's always one in any agency, to help elders, etc) you can make an direct account transfer (that's how I pay my rent for example). Now how to make an account transfer is another questions =)