In short, the reason why the country is spelled BRAZIL in English is because this is what the country was called when it was founded.
Here is a quotation from an editor on Wikipedia to try to put an end to this silly debate:
Since many people interested in this debate are foreigners and thus don't have in-depth knowledge of Brazilian History, I want to add Brazil used to be officially called "Imperio do Brazil". To check this information, see the 1824 Brazilian Constitution in http://www.presidencia.gov.br/legislacao/constituicao where it's published with the original grammar.
After the Republic was established, the country officially adopted "Republica dos Estados Unidos do Brazil" as its name. Yes, that's right. Brazil with a "Z". It surely gives us a very good explanation to why Brazil is spelt with a "z" in English - it's the way it was originally spelt in Brazilian Portuguese too. Later, of course, "Brasil" was incorporated by grammar reforms and "Brazil" was scrapped, though in other languages (like English) the original spelling was maintained.
Ironically, turns out spelling Brazil with a "z" actually supports the original Brazilian Portuguese roots and therefore in no way diminishes Brazilian culture.