In my experience during different years:
Lanzarote mid December - six days of warm sun, mid 20s, one day of cloudy/rain. Sea too cold to swim in without wetsuits.
Tenerife first week in January - warm mid 20s all week and sea was warm enough to swim in. This may have been an anolmoly because we've also been to Lanzarote in February and the sea was freezing.
It can be cool at night, so you'll need to wrap up if you want to sit outside bars and restaurants. If you pick a hotel with an indoor or heated pool or spa, then you can still use them in poor weather.
There's quite a lot to see on Lanzarote that doesn't need good weather like caves, volcano park, vineyards and Cesar Manrique's arty stuff.
It can be hit and miss but you can be lucky. You can increase the chance of good weather by going to the southern side of any islands so the area between Costa Adeje and the airport on Tenerife rather than Puerto de la Cruz even though the latter may be nicer/more authentic or Playa Blanca/Puerto del Carmen on Lanzarote rather than Costa Teguise.
I'd definitely go for it. Or if you are just wanting a relaxing hotel/pool holiday, the weather might be better in Cape Verde but there's not much to do outside the hotels.