Hi, good morning.
Firstly, this is my opinion. I am a user of SchoolBase, not an employee.
Looking through your list of requirements, I would recommend Furlong SchoolBase. From what you have listed, I am 99% sure that they cover all of your needs. One of the things you haven't mentioned is customer support. SchoolBase has the best customer support I have ever come across.
I do believe it would be worth getting in contact with them and having a chat. No harm is taking half an hour to see if it fits your needs.
Let me know how you get on.