Help with Aquarium automation code.

Stage 1; blues at 0%, whites creep up over an hour or so to 100% (0930 am)
Stage 2; blues increase to say 50%, white fades back to 10% (1530pm)
Stage 3; Blue fades back to 5% and whites fade to 0% (2245pm)

You are describing a state machine with 3 states. Currently you have 2 states which is easily handled with if/else because you want one of two things to be happening.

You can code 3 states using if/else if/else and test the time but to my mind that gets messy and it is better (in my opinion) to use switch/case as it makes the code easier to read, for me at least.

Each time through loop() derive the current state, lets call it fadeState and value it 0, 1 or 2 depending on the time of day
Then use switch(fadeState) to execute the correct portion of code for the current state. Job done.

Incidentally, reading some, but not all of your code I saw some things worthy of comment.
Why are you using seconds since midnight when you could use the current time directly ?
A small thing at the moment but it could bite you if you begin to run out of memory but in

const int kChan0Pin = 9; // Channel 0 Pin
const int kChan1Pin = 10; // Channel 1 Pin
const int pump1 = 5; // pump 1 
const int pump2 = 13; // pump 2 

int buttonPin = 2; // button to pin 2
int buttonPushCounter = 0; // counter for amount of button presses
int buttonState = 0; // current state of the button
int lastButtonState = 0; // previous state of button

the variables could be declared as bytes to save space.
Check whether
Serial.flush(); // ensure we never have more than 5 bytes bufferedis actually doing what you think and if not, remove it.