Можно. У игрока когда он садиться на сущность появляется тег RootVehicle. Можно это обнаруживать с помощью команды execute (Не проверял, но по логике должно работать):
execute as @a if data entity @s RootVehicle run say 123
Точно также можно найти игрока не в лодке:
execute as @a unless data entity @s RootVehicle run say 123