#JavaScript (ES6), 36 bytes
Returns a boolean.
s=>!/[^aeiouy]([^aeiouy]|$)/.test(s)
###Test cases
let f =
s=>!/[^aeiouy]([^aeiouy]|$)/.test(s)
;[
"hate", "love", "popularize", "academy", "you", "mouse", "a", "euouae",
"acorn", "nut", "ah", "strong", "false", "parakeet"
]
.forEach(s => console.log(s + ' --> ' + f(s)))