This tradition appears to be quite old, dating from at least the days of Pelé if not before. I had always understood it to be related to the fact that many Brazilian men have lengthy names with many middle names and patronymics, necessitating nicknames so that athletes' names can be fit by the printers on the backs of their jerseys, but this may well be an apocryphal explanation. If there is some truth to it, however, why do Brazilian men have such lengthy names? What cultural phenomenon led to such an agglutination of patronymics and such?
Also, why did this tradition not take root to the same degree in Portugal (or did it)? And why does it not apply to Brazilian women (or does it)?
Though I can only speak for soccer, I'll try my best to address the question as thoroughly as possible:
I'd like to make it clear that nicknames such as "Pele" are not only applied to athletes but are commonly used across Brazil. This applies to people from different social classes and in different occupations. Even former head of state Luiz Inácio Lula da Silva was and still is popularly known as "Lula" both within and outside of Brazil.
I haven't been able to quite figure out when this became commonplace in Brazil but one of the most prominent figures of the Inconfidência Mineira was Joaquim José da Silva Xavier( 1746-1792) more commonly known as Tiradentes. So it's definitely a practice that dates back a few centuries in Brazil.
In regards to soccer, I decided to look through the Brazilian World Cup squads that had existed before the triumphant 1958 World Cup-winning team that featured Pele. I used FIFA's website and looked through the names from the World Cup Squad of 1930 and found players that had nick names. My personal favorite was the striker Abraham Patuska da Silveira who was known as Araken. This has certainly been a practice in Brazilian sport before Pele’s rise to superstardom.
I've read about a lot of possible reasons for the use of nicknames in Brazil but the two I lean to most are:
Documents such as this printed circular from March 20, 1855, in which a Brazilian slave is referred to as "André" serve as evidence of this. Source
There a lot of other reason that have been posited and I think that there are many reasons as to why this practice originated and has been maintained to this day.
Though the idea that names were shortened so the "athletes' names can fit by the printers on the backs of their Jersey" is a convenient one and may play some role in modern sports I doubt it is the primary reason for the phenomena seen.
As stated already it's steeped in historical, cultural and social norms and customs. Simply put, I believe the athletes first gain their nicknames before becoming professionals, rather than they becoming professional and having to use a nickname for the print.
I'll use the player you mentioned as an example. Edson Arantes do Nascimento commonly known as Pele gained his nickname while still in school due to his inability to pronounce a local goalkeeper's name properly. His colleagues teased him about it and called him that name and apparently it stuck. Source: His Autobiography.
The same also applies for his team mate and fellow Brazilian sport legend Garrincha who gained his nick name when his younger sister started calling him it because she thought her brother was as small as bird(Garrincha being the name for a little brown bird). This was according to his famed biographer Ruy Castro.
Now to answer your last two questions:
"Why did this tradition not take root to the same degree in Portugal (or did it)"
Historically and presently there are Portuguese international soccer players with nicknames or shortened names. Portuguese and Manchester United midfielder "Nani" is really Luís Carlos Almeida da Cunha. To go back further there was Portugese and Benfica striker Tamagnini Manuel Gomes Baptista, commonly known as [Nene] (http://en.wikipedia.org/wiki/Nen%C3%A9_%28footballer_born_1949%29) who played in the 1984 European Championship.
"Why does it not apply to Brazilian women (or does it)?"
It does, in fact, also apply to women. A quick look through the female Brazilian World Cup Squads will confirm this. I decided to look at the first Female Brazilian national Squad from in the Inaugural 1991 FIFA Women's World Cup. My personal favorite nickname belonged to Marilza Martins da Silva, who was commonly known as Pelézinha (apparently a homage to Pele).
I’d like to highlight that there have been rare cases of footballers with long names that simply didn’t shorten the name such as former Dutch and Celtic striker Jan Vennegoor of Hesselink who Jersey print read “Vennegoor of Hesselink” and was so long it necessitated the words having to be curved to fit the print on the back of the shirt. (Picture provided from http://www.psv.nl/)
Finally, though this practice is most commonly associated with Brazilians in soccer it has also been seen with players of other nationalities such as Mexican striker Javier Hernández Balcázar, who is commonly known as Chicharito. It is Chicharito that is printed on the back of his Jersey.
Hope that helps