Despite having a bit of a premium while installation, a Solar PV system usually would payback within 6-7 years, and you can enjoy free electricity for next 20 years.
No, Solar Water Heaters works with a technology called Solar Thermal, and it cannot generate direct electricity without help of Solar Photovoltaic Panels.