Working SSIS package fails as a job, probably due to data flow connection
All right, I think I've got it. I'm relatively new to this, so forgive any bad terminology. 

I got on the right path with this: https://stackoverflow.com/questions/31755979/storing-password-in-ssis-package

Basically, the external connection to the Amazon DB was the issue. I had the correct credentials stored in the SSIS package to make the connection, but by default sensitive information (such as passwords) are encrypted in such a way that is specific to the user who created the package. So the package ran fine for me, but it wouldn't work for anyone else, including the job. 

To fix this, you need to change the default Package protection to give the package a sort of master password, so that the package will run correctly for anyone, as long as they have the password for the package. In the project properties, you can find ProtectionLevel and switch the value to another option (I chose "EncryptSensitiveWithPassword.") You'll enter a password, then be prompted to also change the child package files. Get into the package properties and change protection level there too. Enter the same password on the line above. Save it. 

Now, when you import package into Integration Services you'll be prompted to enter the password. Then you'll be prompted again when you set up the job. But with the password entered it runs successfully. 

Hope this helps somebody.