ACH and Wires have similar times to "settle". However, rules within Fedwire and NACHA allow banks to hold ACHs for a few more days before releasing them to the customer. But technically funds are both arriving within 24 hours or so.
It's to make money-laundering harder. Prevents you from opening an account, transferring money to it, then immediately out of it and closing the account.
60 days hold is legal because that's for how long ACH transactions are reversible. Such long holds only happen if you have zero prior relationship with bank. I work in FinTech now and such things finally started to make sense to me.