Or how about allow for knowledge of one firm being shared with the other being illegal since it’s proprietary (I think this is probably already the case).
That's very hard to police and prove. It's easier if you pay them to be unemployed for long enough for their knowledge to be less valuable. This is very common with businesses like hedge funds. But I agree non-compete should be narrowly allowed and only in situations like this that are more equitable.