What makes things complicated around this area is that Sweden is divided in geographic regions ("landskap") and around Vättern you have no less than 4 different regions meeting with the lake in the centre. This reflects on public transport, there are different local bus companies depending on region.
Skövde is a bit of a communications hub, so from there you can go to nearby towns by train or bus. You can take the train between Skövde and Jönköping info in English here. There should be bus lines for the other locations (info here). Out of the places mentioned, Gränna/Visingsö as well as Vadstena are the most obvious tourist destinations, so maybe focus on those if you have limited time. Normally you'd go to Visingsö from Gränna with the regular ferry, but I think there's some manner of ferry from Hjo as well.
Going to Vadstena by bus seems to be quite complicated from what I can tell, since there's no direct connection from neither Gränna nor Skövde, so you'll have to go to Motala, Skänninge or Mjölby first (this is the site for the local bus around there). It's going to be a long bus ride for many hours with transits to go from for example Gränna to Vadstena, while it's less than an hour with car. Check https://www.rome2rio.com/map/Gr%C3%A4nna/Vadstena.
Apart from that, I think it's quite possible to visit most of these places by public transport, though you'll obviously need to study some time tables then. Vadstena will be far more accessible by car. On Visingsö it is custom for tourists to travel around by horse-drawn wagons (available in summertime) and you'll generally not need a car there.
I think you are correct in assuming it's easiest to get accommodation in the larger towns like Jönköping.
Regarding car rental, gas station companies like OKQ8 usually offer it and they are open pretty much 24/7. They seem to have various weekend rental deals: https://www.okq8.se/hyrbil/weekendhyra/