I typically use smaller hotels so you may not like my choices.
I think you would be really happy with our choice in Cordoba:
Hotel Hesperia Córdoba
Avenida Fray Albino, 1
14009 Córdoba
It's a decent modern hotel with a rooftop lounge, lots of free and safe parking in the area, and a short walk across the Roman bridge (walking bridge only) to the Mesquita and surrounding quarter. If I wasn't driving, I might have wanted to be in the old center but this was perfect for the person with a car.
We stayed in a pretty large hotel in Sevilla:
Hotel Silken al Andalus Palace
Avenida de la Palmera s/n, esq. C/ Paraná
41012. Seville, Spain
T: +34 954 230 600
This is much bigger/more luxurious than my normal hotel but I found a great deal for a four night stay. They have parking in an underground garage, but the area has plenty of free and safe parking so save yourself money and park on the street. The hotel isn't downtown but there is a bus stop at the end of the block that takes you downtown in about ten minutes and runs longer than you will (during April Fair, we were catching buses at 4 am).
We loved the place we stayed at in Granada but it was just a tiny Hostal with maybe 8 rooms. It was downtown, a few blocks from the Cathedral and walking distance (for regular walkers) to all of the main sights. There was a parking garage around the corner - so you don't have to park all the way up by the Alhambra.
Pension Zurita
Plaza de la Trinidad, 7
18002 Granada
We may have parked at Parking Victoria (but it seems like ours was even closer than that).
I wasn't particularly impressed with our place in Madrid (expensive and adequate is the best I can say). We had dropped our car in Cordoba and fast trained into Madrid, so can't recommend parking anywhere. There are two Hostals in the same building Hostal Santa Cruz and Hostal Cruz Sol. They are nicely located, an easy walk to either Plaza Mayor or Puerta del Sol but the rooms are utilitarian, not at all charming, especially compared to much cheaper rooms we stayed in elsewhere in Spain.