The CEO should take a hard look at his managers. If a worker has enough free time to hold down another job simultaneously, then perhaps he and others in the company are woefully under-occupied and their positions can be consolidated. Ethics issues apart, this sounds like a leadership issue.
Agreed. Return to 100% office, and conduct a RIF and remove the slackers.