Кастильо — воспитанник клубов «Зебюргия» и «Аякс». В 2016 году Хуан подписал контракт с английским «Челси»[1]. Для получения игровой практики он начал выступать за дублирующий состав. Летом 2019 года Кастильо на правах аренды вернулся в «Аякс», где начал выступать за «дубль». 13 сентября в матче против «Де Графсхап» он дебютировал в Эрстедивизи[2]. Летом 2020 года Кастильо был арендован АЗ[3]. 27 декабря в матче против «Утрехта» он дебютировал в Эредивизи[4]. В начале 2021 года Хуан ан правах аренды перешёл в «АДО Ден Хааг»[5]. 13 января в матче против «ВВВ-Венло» он дебютировал за новый клуб[6].
4 июня 2024 года подписал двухлетний контракт с клубом «Валвейк»[11]. 10 августа дебютировал за клуб в гостевом матче Эредивизи против ПСВ, выйдя на замену на 77-й минуте вместо Арона Мейерса[12].