I think it works, especially with the comeback of "older" names.
I also like
Percy as a nickname, and I think it would work as he got older too.
Percival goes well with the other names on your list. If you're still hesitant about it as a first name, perhaps it could stay as a middle name?