Repository: flutter
Issue: [flutter_tools] catch FileSystemExceptions during `flutter upgrade` precache step, and print helpful instructions
Labels: tool,c: proposal,P2,team-tool,triaged-tool

I tried to update my flutter installation, i run the flutter upgrade tool, it executed till half because of a os error, and then it says that flutter has been upgraded regardless of the previous upgrade really finished and i have no way of "reinstall it".

## Steps to Reproduce

```
PS D:\xx> flutter upgrade

Upgrading Flutter to 3.7.3 from 3.3.10 in C:\flutter...
Checking Dart SDK version... 
Downloading Dart SDK from Flutter engine 248290d6d50a1bf1a6a246544347c03acda867a5... 
Expanding downloaded archive...
Building flutter tool... 
Running pub upgrade... 
Upgrading engine...
Downloading Material fonts...                                        2ms
Downloading Material fonts...                                        0ms
Failed to download https://storage.googleapis.com/flutter_infra_release/flutter/fonts/3012db47f3130e62f7cc0beabff968a33cbec8d8/fonts.zip. Ensure you have network connectivity and then try again.
FileSystemException: Cannot delete file, path = 'C:\flutter\bin\cache\downloads\storage.googleapis.com\flutter_infra_release\flutter\fonts\3012db47f3130e62f7cc0beabff968a33cbec8d8\fonts.zip' (OS Error: Impossibile accedere al file. Il file è utilizzato da un altro p
, errno = 32)

PS D:\xx> flutter upgrade
Flutter is already up to date on channel stable
Flutter 3.7.3 • channel stable • git@github.com:flutter/flutter.git
Framework • revision 9944297138 (7 days ago) • 2023-02-08 15:46:04 -0800
Engine • revision 248290d6d5
Tools • Dart 2.19.2 • DevTools 2.20.1
```

## Logs

<details>
<summary>Logs</summary>

<!-- If possible, paste the output of running `flutter doctor -v` here. -->

```
[√] Flutter (Channel stable, 3.7.3, on Microsoft Windows [Versione 10.0.19045.2546], locale it-IT)
    • Flutter version 3.7.3 on channel stable at C:\flutter
    • Upstream repository git@github.com:flutter/flutter.git
    • Framework revision 9944297138 (7 days ago), 2023-02-08 15:46:04 -0800
    • Engine revision 248290d6d5
    • Dart version 2.19.2
    • DevTools version 2.20.1

[X] Windows Version (Unable to confirm if installed Windows version is 10 or greater)

[√] Android toolchain - develop for Android devices (Android SDK version 33.0.1)
    • Android SDK at C:\Users\xx\AppData\Local\Android\Sdk
    • Platform android-TiramisuPrivacySandbox, build-tools 33.0.1
    • ANDROID_HOME = C:\Users\xx\AppData\Local\Android\Sdk
    • Java binary at: C:\Program Files\Eclipse Adoptium\jdk-17.0.3.7-hotspot\bin\java
    • Java version OpenJDK Runtime Environment Temurin-17.0.3+7 (build 17.0.3+7)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop for Windows (Visual Studio Build Tools 2019 16.11.9)
    • Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools
    • Visual Studio Build Tools 2019 version 16.11.32106.194
    • Windows 10 SDK version 10.0.19041.0

[!] Android Studio (version 2022.1)
    • Android Studio at C:\Users\xx\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\221.6008.13.2211.9514443
    • Flutter plugin version 72.1.2
    • Dart plugin version 221.6096
    X Unable to find bundled Java version.
    • Try updating or re-installing Android Studio.

[√] IntelliJ IDEA Ultimate Edition (version 2022.3)
    • IntelliJ at C:\Users\xx\AppData\Local\JetBrains\Toolbox\apps\IDEA-U\ch-0\223.8214.52
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin version 223.8214.16

[√] VS Code (version 1.73.1)
    • VS Code at C:\Users\xx\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.54.0

[√] Connected device (3 available)
    • Windows (desktop) • windows • windows-x64    • Microsoft Windows [Versione 10.0.19045.2546]
    • Chrome (web)      • chrome  • web-javascript • Google Chrome 109.0.5414.122
    • Edge (web)        • edge    • web-javascript • Microsoft Edge 110.0.1587.41

[√] HTTP Host Availability
    • All required HTTP hosts are available

! Doctor found issues in 2 categories.
```

</details>