For practically any train route in Russia where important long-distance trains pass and at all stations where they stop for more than ten minutes, you can expect an army of babooshkas to be waiting, selling their self-made food. In my experience (travelling Moscow–Sludyanka and back), what they sell is pretty good both in taste and in price. So these are always an option.
Also, all long-distance sleeper trains deriving from the Soviet Union will have a hot water supply in every coach — Russians will expect it to be there. Find a supermarket before you leave Moscow, buy some ‘just add water’ stuff and enjoy it on the way. (Also take tea bags or instant coffee, whichever your favourite hot drink may be.)
On the topic of accepted currencies should there be a restaurant car: I can only speak from experience with RZD, but their restaurant on the Moscow–Vladivostok train would not accept anything other than rubles in cash. I would not bet on the train accepting anything else while in Russia (Yes, that includes credit cards).