Hi MathildaBagshot,
Although you have not stated your specific score goal, if it's 700+, then I think that you should consider pushing back your Test Date.
Test Day is a rather specific 'event' - the details are specific and they matter, so you have to train as best as you can for all of them. The more realistic you can make your CATs, the more likely the score results are to be accurate. The more you deviate, the more "inflated" your scores can become. From what you've described, you've been taking your CATs in ways that do NOT match up with what you'll face on Test Day. By skipping sections, taking the CATs at home, taking them at a different time of day, etc., you weren't properly training for the FULL GMAT 'experience.'
Thankfully, this is a relatively easy set of problems to fix. The big question now is "how long will it take you to properly get 'used to' taking the full GMAT in a way that properly mirrors Test Day?" You'll certainly need a new set of practice CATs to work with and you have to put in the necessary time to train your brain (and body) for the FULL GMAT.
1) What is your score goal?
2) Do you have the flexibility to push back your Test Date (even if it's just a few weeks)?
GMAT assassins aren't born, they're made,
Rich