you might want to get some "Simple Green", they have it everwhere, Home Depot, Rite Aid, etc, and then when its all clean, just wax it REALLY well, with mothers or some other high quality Carnuba, not the cheap liquid stuff, but the real deal. Paste or something, buff it in, do a few coats, and it will do a better job of crap not sticking on. But for bikes these days there are a LOT of cleaners/Polishers out there that are design specifically for bikes to clean grim and polish at the same time, I used some Honda brand, its a spray can that is red and worked WONDERS on my last bike.
Do you have a chain gaurd on?
maybe get a bigger one?
or better yet, buy chain cleaner, clean ALL The lube off and re-lube it with some synthetic lubes for chains, I bought one that is called Pro Honda HP chain lube or something like that and its not oily at all, more like a synthetic tacky stuff that sticks to the chain and is designed NOT to fling off like most oil based lubes