You can't use EWR as a connection between the ORD runs.
CLE-LGA/EWR-ORD-EWR/LGA-CLE should be valid, but the extra EWR-ORD-EWR in the middle kills it.
You might be able to use MDW to make it work, but I think the extra transit of EWR is going to mess you up.