Bank of America analyzed more than 1,000 stocks for 2024 and pinpointed the top 31 small- and mid-cap picks with average upside of 30%