What should colleges do regarding frosh admission to oversubscribed majors?

The UCB College of Engineering, which uses (A) (frosh admission to major) does have a CoE undeclared option that frosh can apply to. If admitted, the student can freely choose any CoE major later if s/he is in good academic standing (which includes a GPA minimum of 2.0). However, the number of frosh admitted to CoE undeclared is very small, and it is more selective than most or all of the declared CoE majors, since the CoE majors are already enrolled to capacity or nearly so.
http://engineering.berkeley.edu/academics/undergraduate-programs/undeclared

Note that this is different from schools which use (B), where a frosh entering as undeclared or pre-engineering may need to meet a GPA significantly higher than 2.0 (sometimes higher than 3.5 for some majors at some schools) to get into his/her desired major.