They do have to be consecutive days. And I doubt you could get only a 2 day if you are staying five. They are supposed to be for the entire length of your stay but you can often get a CM to drop either the first or last day. You *might* be able to get them to drop both, which would give you three days for the passes.
Your other option would be to create two reservations. One for two days and one for three days. Then you could get the pass for the 2 day portion. It would be a bit more work but would work if you really want to be able to park hop.