Well, 'Johnny Tremain' is a classic in middle grade historical fiction. It takes place during the American Revolution and follows the life of a young apprentice silversmith. It's a great way for kids to learn about that important period in history. Then there's 'Catherine, Called Birdy' which is set in medieval England. It gives a humorous look at the life of a young girl in that time. Also, 'The Birchbark House' by Louise Erdrich is wonderful. It's about an Ojibwa girl's life in the 1800s and offers insights into Native American culture of that era.
A really good one is 'Esperanza Rising' by Pam Muñoz Ryan. It tells the story of a Mexican girl who has to flee to California during the Great Depression. The book shows how she adapts to a new life. 'I Survived' series by Lauren Tarshis also has some great historical fiction for middle graders. For example, the books in the series that deal with events like the Titanic sinking or the 9/11 attacks are both educational and engaging for this age group. Another excellent choice is 'The Sign of the Beaver' by Elizabeth George Speare which is set in the colonial days in America.
One great example is 'Number the Stars' by Lois Lowry. It's set during World War II and tells the story of a girl in Denmark who helps her Jewish friend. Another is 'The Watsons Go to Birmingham - 1963' by Christopher Paul Curtis which gives a vivid picture of an African - American family's journey to the South during a turbulent time in American history. And 'Roll of Thunder, Hear My Cry' by Mildred D. Taylor is also excellent, exploring racism in the South in the 1930s.