The download may not work on mobile browsers. I know most mobile browsers don't properly implement file fields, so file upload does not work on mobile.
To use a button submit to submit a form, yes, the button will need to be in the form.
your form should also contain a hidden element that sets the download file name.