I have been struggling to make progress in my swimming for quite a while now. Is it simply a need to eat more food to improve? I recently took 2months off swimming to assist my recovery. I want to achieve my goals in swimming, but I don't know if it is that simple to just eat more, becasue I feel like I'm already eating too much?
Your current calorie intake is low.
How many calories do you need per day?
You need calories to support your activity on workout days, and you need calories to aid in recovery on rest days.
Try eating about 3000 calories on workout days, and 2000 calories on non-workout days for a few weeks and see how that affects your recovery and performance. You may gain a bit of weight, but nothing drastic, and it may be muscle. If you find that the extra calories help your performance, you can fine-tune it from there to find exactly how much you need.
What you eat is also important. This article on Recovery Nutrition for Athletes gives some advice about what types of food to eat immediately after workouts:
That's just one example, but choosing the right calories is important throughout your day, not just after workouts.
Here are some other resources to help you sort out your diet:
You answered your problem right away when you stated you took 2 months off of swimming and have been swimming in a "very high intensity" state quickly stagnated. Very strong case of early over-reaching which can lead to a very fast plateau. Depending on your work capacity and training volume from the past was, making substantial progress will most likely take a while. And diet is just a SMALL part of this; if anything it is your training regiment, intensity level, technical considerations. Diet is just the icing on the cake.
Eating extra calories will give you energy but at what cost? You put your body through a shock now that you have been going into a very high intensity training program. Your insulin levels will most likely be ping ponging for the first few weeks and weight lose or weight gain will happen; and it probably won't be good weight. The trick is slowly increasing your volume along with your caloric intake over the course of a few weeks. Set yourself a goal (either an upcoming competition, summer "fit" look, or for your girlfriend's birthday) and increase your workouts along with your intensity at a slower rate. It is best to undertrain than to overtrain sometimes which will help you push through plateaus better. You can try to test your fitness every 2 to 4 weeks by doing a high intensity timed workout to see how you measure in performance (400 Meters for a Personal Best timed for e.g.).
To also answer your question about caloric intake you mention you eat less on non-workout days and more on workout days. This is termed as carb cycling (even though you mention it as calorie cycling) and does work when done right. Instead of getting down to the bodybuilding exact numbers and percentages for carb cycling (from the looks at your post you aren't at that level yet), let's keep it simple. On workout days eat more carbs, keep your protein and fat intake the same and on non-workout simply cut down your carbohydrate intake and slightly increase your protein intake. Try to minimize the carbs the later it gets in the day (for dinner limit your carb intake for e.g.).
Concerning right calories you need to realize that all carbs are broken down into sugars into the body. The refined carbs (white bread, white rice, etc...) spike the insulin to a higher degree than complex carbohydrates which helps moderate your insulin spike. If you moderate that correctly that is what will cause you to burn fat, build muscle and improve performance.
Understand though that it is an accumulation of everything not just diet that can stagnate performance. Work, stress from relatives/girlfriends, environment, weather, etc. has an effect. Understanding how to cope with those variables at the highest level is what creates a champion athlete.