I like Lindau in good weather, it almost feels Mediterranean. Meersburg is a little more touristy but there is a funky old castle and old town to enjoy. Konstanz is OK but I'd prefer to stay in the other two. Fredrichshaven itself isn't super charming but it is home to the Zepplin museum - you can even take a ride on a Zepplin, although it's not cheap.
The garden island is Mainau is lovely in, again, good weather (we've been having strange weather lately so no guarantee of this next week). I enjoyed taking the boat from Meersburg to get there, but you could also drive. A friend of mine recently visited Sigmaringen castle, which isn't on the lake but it's not too far and he's been raving about it.
On our first trip we decided to drive around the lake - mistake. In addition to having to purchase the vignettes to drive in Austria and Switzerland (OK, we might have skipped the Austrian one) it's just not nearly as nice in terms of the towns to visit as the German side, and no view of the Alps.