I think geography is a good answer I hadnt thought of. There is simply not the need to have more teams in Wales and Ireland because they are quite small countries and in the case of Ireland they have a simple four provences on the Island which makes it easy for people to identify with their regional team I guess.
Scotland is special because the part of the country where rugby was most popular was the rural south. There is no town there remotely big enough to support a professional club. Plus the union is too poor and badly managed to support a third team, in part due to a lack of any suitable stadia. Finally it is also because most of the cities outside Edinburgh and Glasgow are also too small or don't have a rugby supporting heritage.
The aim is that with less teams you have all your best players playing side by side each week and the standard of matches is higher than if only one or two international players were in each side. This is one reason why Russia recently cut the number of their professional teams and why there is discussion that South Africa and Australia should maybe have less sides in Super Rugby. Countries with more clubs, like Romania, may instead be focussing on having professional teams in each of their cities to try and spread enthusiasm for the sport.
Which way is better? Who can say.