I had recently faced this problem after moving my site to the new server.
Your filesystem paths on the new server are different from the old server and as a result your upload paths are appearing to be un-writable as it doesn't exists on the new server.
Your problem is that sometimes the WordPress will populate an option called upload_path in your wp_options table.
So the fix for this issue is quite simple, you just need to delete either the key from your wp_options table, or the value of that key.
There is a neat way inside WordPress itself to do this as follows:
1. Log into your WordPress Admin account
2. Go to following URL on your site: /wp-admin/options.php. This will show you the full list of WordPress Options in your wp_options database table.
3. Now search the following option name: upload_path
4. If it has got the value, just delete the value in that field.
5. Please don't change anything else and proceed to click Save Changes at the bottom.
Now WordPress will then start using the default path (/wp-content/uploads/) for your uploads folder.