FIX: correctly use timeouts in `FileHelper` and `FinalDestination` (PR #12921)

Previous refactors have lost usage of read_timeout in FileHelper.download and FinalDestination was incorrectly using Net::HTTP.start by setting open_timeout in the block instead of directly during the invocation.

Couldn’t figure how to write a good test for this without slowing the spec.

GitHub