To answer the headline question I'd say the city centre's in the area between the Central Station (Vasagatan) - Klarabergsgatan - Birger Jarlsgatan - Kungsgatan whisch can also be considered the CBD of Stockholm.
However, if you're looking for areas to stay the Rival Hotel on Mariatorget on Södermalm is close to several underground stations and also has several good restaurants and bars close by - Sjögräs, Marie Leveau, Bistro Süd, Bauer, Ljunggrens, Il Tempo etc.
Vasastan is quite a nice area but lacks a good hotel (the Best Western Time is not bad but a bit off the map). You have several nice restaurants of different cathegories here as well - Peppar, Wasahof, Musslan, Tranan, Paname as well as places such as Cliff Barnes, Storstad et all.
Gamla Stan is nice but a bit of a tourist trap with quite over priced restaurants and bars all around although some - like Bistro Ruby, Le Rouge, Wirstroms - are quite good.