1. Getting to work remotely is straightforward. Don't ask for it till you have done an onsite contract first. Prove that you deliver. Then you can be trusted.
2. NDA. Yes, insist on the "standard exceptions" or walk away. There are plenty of other fish in the sea.
3. Yes, you have to educate people you work with. Also true when an employee.
4. Riding out storms. It's not hard to build up reserve money in your business - simply park some of the profit. I always had 6 months worth. You have to park quite a lot anyway, so that you have it ready when tax payment day comes.
5. Keeping up to date. Yes, that's tricky - but you do NOT need to chase the Flavour-of-the-Month like employees do. I only needed to change direction once in 20 years - plenty of earning opportunities always there
6. Reconcile agile and fixed-bid? That's ridiculous FUD. No freelancer is so stupid they do fixed-bid with open-ended requirements, surely? Leastways they only do it once. Every freelancer I have ever worked with was on time and materials.
7. Communications gaps. This is not a threat, this is an opportunity! This is where the freelancer can shine, by doing the internal communicating that the customer is themselves is incapable of. I have done this on every project, and got kudos for being helpful.
8. Time management. Ho hum. Everybody, freelancer or employee, has to manage their time.
Time needed for handling getting requirements and doing proposals? You call that non-billable? No, Dorothy, you roll that into your daily rate.