The EGR code sounds like a separate problem. All my poor running was caused by vacuum leaks. The hoses are showing their age.