Lex ... the BNP got 1.9% of the vote, not 8%. Most PR systems have methods to stop things fragmenting too far - be that a constituency (under alternative vote or single transferrable vote) or a threshold under a list-based system. Those that don't (e.g. Israel) end up very polarised. I think that UKIP would end up with seats, but I doubt the BNP would.
(I think that setting some limits to parliamentary privelege and standards (e.g. removing protection for racism, inserting tolerance into the oath to the queen) would make it very difficult for any elected BNP representative to take a seat.)
Your second point is valid, and why we've got to be careful in estimating outcomes from current vote share. The 23% lib dem vote is probably an underestimate of their support in a straight lib-lab-con choice, but add the greens in and it will also change things.
The constituency size thing is the 35k versus 33k issue. It's important and valid to consider, but it's a very minor compared to the 35k versus 120k one. To me, it's a little like torturer complaining about having to do unpaid overtime
If you want to set boundaries 3 months before an election, you need to give about 6 months notice. Realistically, this means no snap elections - quite a big constitutional change to put without a referrendum.