It's because of the pre-existing condition clause in Zero-care. If people can sign up for insurance at any time during the year, and if the companies cannot refuse them because of pre-existing conditions, then an intelligent consumer would wait until insurance is needed, sign up for the policy, get the treatment, then cancel the policy.
By establishing an open enrollment period, people are forced to choose insurance months in advance and must hold that insurance through at least 9 months.
In other words, it’s a shell-game alternative to the pre-existing condition issue.
Under the ACA, insurance companies must take you even if you have a pre-existing condition, but you don’t know if you’ll have one, so you are co-erced into signing up during the allowed intervals to prevent your being caught without insurance.
It’s not really different, it just sounds different!