Du kan göra precis vad du vill genom att matcha IN BOOLEAN MODE och använda * operatör.
Till exempel:
... MATCH(thing) AGAINST ('+educat*' IN BOOLEAN MODE)...
+ talar om för matchningen att endast inkludera värdena för thing som innehåller den matchande termen, som i det här fallet är alla indexerade värden som börjar med "educat " (se här
för hur booleskt läge fungerar i detalj).
Dessutom indexerar fulltextsökning i MySQL inte ord med 3 eller färre tecken som standard, så jag misstänker att din matchning med "edu" inte fungerar som du tror. Titta på värdet på din ft_min_word_len variabel för att se om så är fallet.