What you are experiencing is standard accrual basis accounting. Income or expense happens when service is provided - even if no payments are ever made. You will see the exact same thing if you enter a vendor Bill to pay later - your expense posts as of bill date not payment date.
Changing what you see is as simple as changing your reporting to Cash and viewing reports as Cash basis.
But hold that thought and look at your past tax returns and how you have already declared whether you are cash or accrual since you cannot just switch when convenient.
One more nugget. Since you offer terms you would never be pure Cash basis but would be Hybrid (which is recognized by the irs) or Accrual and as accrual you recognize income when you provide service - not when you get paid