L.G.
It's tough to expect grandparents to change their schedule. I'm assuming they are watching him for free. So don't stress about what they are doing or not doing. Be thankful for their willingness to watch him. Show your appreciation to them daily so they don't get stressed.
Can you move in with the grandparents to save money and then just work part-time somewhere at night when your son is sleeping? Then you can be with your son during the day, you wouldn't have to pay for preschool, and you can set up a better schedule for your son.
With you and the boy's dad not together, your son needs you more now than ever. It would take a lot of sacrifice on your part but for now, it would be most beneficial for your little guy. If he is like most kids whose parents are not together, he either is dealing with anger now or it is coming.