(As you pointed out), 'on-premise' is used very often (according to google trends as much or more than on-premise). There's an argument to be made that language is about how people use it and not the theoretical rules of grammar - and therefore if a 'mistake' is done often enough it should no longer be considered a mistake.
Fair enough, language should strive to be unambiguous. I guess I spent enough time in corporate-world that 'on premise' just means 'on-site'. Perhaps a hyphen would've helped.