После долгих попыток исправить ошибку, оказалось все очень просто.
Почему-то метод чтения и добавления файла влияет на прогрессбар, причём не ломает саму загрузку (а я до этого "не правильно" использовал компонент загрузки).
Вот правильный код:...
using (var contentData = new MultipartFormDataContent()) {
...
contentData.Add(new StreamContent(File.Open("имяфайла", FileMode.Open)), "file", "filename");
....
Самая важная часть это использование StreamContent. До этого у меня был не он и файл читался и загружался, но прогрессбар летел сразу же.