I think all stations with "street" or "road" suffixes should go (apart from termini), and all stations that are named after the area whilst other stations in the town have suffixes, so "Streatham" and "Tooting" should be renamed to something like Streatham Wells and South Tooting respectively.
I don't agree with your second statement. I think that all stations that are named after the area, are the town centre and are the main station in the area, should only be named using that area. For example, Southampton Central should be renamed Southampton.
I think that the use of "and" in a station name is annoying and misleading. They should all be renamed according to where the station is.
For example,
Harrow & Wealdstone should be renamed to just Wealdstone as it isn't in Harrow. People heading for Harrow should use Harrow-on-the-Hill instead.
Elstree & Borehamwood should be renamed to just Borehamwood as it isn't in Elstree.
Hayes & Harlington should be renamed to just Hayes (West London) as it isn't in Harlington.
Finchley Road & Frognal should be renamed to just Finchley Road as it's an interchange with the underground Finchley Road, similar to the West Hampstead stations. (In the past I didn't realised that there is an Overground station at Finchley Road when my friend told me he was going to take the Overground after alighting a coach there. If the Overground station is also called Finchley Road and linked on the tube map, I will realise it is close to the underground Finchley Road station)
Caledonian Road & Barnsbury should be renamed to just Barnsbury.
Furthermore, West Hampstead Thameslink can simply be renamed as West Hampstead, as the stations are close enough to be treated to be parts of the same station, like Hammersmith (District & Piccadilly) and Hammersmith (Hammersmith & City), or Paddington (Circle & District) and Paddington (Hammersmith & City), while Hackney Downs and Hackney Central can both be renamed as just "Hackney" and becoming one station.