Many of their TOCTOU issues are something a type system can help with. Require operations to execute on a fd handle directly rather than using convenience functions.
let fd = FileDescriptor::new(path);
fd.delete()?;
fd.create(mode)?;
let is_root = fd == FileDescriptor::new("/"); // does (dev, inode) comparison internally
// etc
The uutils devs would need to create that themselves, but OpenOptions seems to get them part of the way there at least.