Not everyone has the means to stock up. You need enough space to store stuff for a month, and a big enough fridge that can keep things fresh for that long. Plus enough cash to buy all of that in one go. Most people lack one or more of these things.
Today is 10th of the month, the day when workers traditionally get paid. Everyone has got their salaries in their last week and a half only, so those who can stock up must be doing it right now.
Also you can buy one month of stock for foodgrains and pulses as there are enough reserves but that is not possible for fresh stuff like vegetables, meat, eggs, milk etc which are sold as they are produced. If people buy a month of stuff at one go, then a small portion of the people will have a month of stock, and the rest of the people will have nothing. Every week, only a week's worth of supply can come to the market. It is impossible for everybody to stock up for the future when supply is like this.
The chickens that most people will eat at the end of this month are too small right now; same for the the eggs which haven't been laid yet and the vegetables that are still in the field.