David Heyman, producer of the Harry Potter films, has explained in a personal letter why American actors aren't cast in the movies.
Replying to correspondence from fan Julie Grenier, Heyman said:
... while all cast members aren't necessarily British, we try very hard to cast to type. As Hogwarts is a British wizarding school, we cast the students from the UK. For Goblet of Fire, we have case some Eastern Europeans and French people to play the students from Durmstrang and Beauxbatons.
Heyman also cites British labor laws, which require actors to have work permits or be citizens of the UK.