In film and the theater there’s a long history of casting actors in roles that may be “against type” in order to do something fresh. Actors are supposed to be able to take a character and bring them to life so you don’t question them as real. Sometimes Hollywood will throw in minority actors to round out a cast. In the case of the two films above, they were going for actors they thought might be more bankable. Asian kid actors haven’t yet hit the big time internationally. So they went with a more generic white kid in Airbender. The character in question doesn’t really have to be of any race. It’s not that important to the story. In the case of the Prince of Persia, they just needed a good-looking leading man with dark hair who can pull off the stunts. It seems Gyllenhaal fit the bill nicely.
There’s nothing really complex or surprising about that. But newspapers and blogs like to create controversy whenever they can to sell stories. Leftists especially like to play the race card whenever possible, as long as it’s done to make white people look bad. If a white actor is given a job playing an ethnic role, it must be racism. But if they cast a minority in a traditionally white role, that must be “progressive.” No wonder they’re losing readers.
We’ve seen many a black actor from Eddie Murphy to the Wayans Brothers put on white face to mock Caucasians in films and that’s accepted without question. Compare that to the hysterical scolding of these films where the characters are heroic and you can see the “people in glass houses shouldn’t throw stones” rule still applies.