The two days before your long run (and your marathon) should be high-carb days. You should make sure that you increase the percentage of carbs in your diet, not the overall calories. Carbo-loading does not mean that you should eat three plates of pasta for dinner! Aim for at least 65% of calories from carbs during those days. You can still have some protein but, for example, instead of having chicken with rice, have rice with chicken. Pasta, steamed or boiled rice, potatoes, fruits, starchy vegetables, and breads are good carb sources. Avoid gas-forming foods like beans and any type of food that may upset your stomach or can interfere with sleep.
Drink plenty of water and nonalcoholic fluids. Not only does alcohol dehydrate you, but it can also prevent you from getting a good night's sleep.
For breakfast before your long run, stick again with mostly carbs and some protein. Some examples of good pre-workout fuel include: a bagel with peanut butter; a banana and an energy bar; or a bowl of cold cereal with a cup of milk. For your marathon, you should be eating breakfast foods that you tried out before your long training runs.
Make sure you don't overhydrate the morning of your run or race, so you can avoid having to make a pit stop. You should drink 16 to 24 oz of (non-caffeinated) fluid 1 hour before your workout or race. Stop drinking after that, and keep emptying your bladder. Drink another 4 to 8 oz of fluid about 10 minutes before you start running, so that you're hydrated when you begin.
More: Nutrition and Hydration Guide for Long Distance Runners
Do I Need to Eat During My Long Runs?
Best and Worst Pre-Run Foods
Can I Drink Coffee Before a Long Run?
Can I Drink Alcohol the Night Before a Long Run?