The train through Switzerland with overnight stops there would be more expensive than flying, but also more enjoyable.
Here is one possible route: Paris to Luzern, 4 h 40 minutes by train. Overnight there. Luzern is a charming town on a beautiful lake; you can ride a boat on the lake or visit a nearby mountain (Rigi) for a short hike.
The next day, take the train to either Lugano (another lake town) or Lauterbrunnen (a beautiful valley that looks a lot like Yosemite, in the heart of the Berner Oberland region of the Alps). Either journey is 2.5 hours from Luzern. The next day head to Venice. From Lugano, this is only 4 hours; from Lauterbrunnen it would be 7 hours.
You can research the routes and fares on the Swiss rail site, www.rail.ch Just put in your starting and ending points.
Another possibility would be to spend 2 nights in Luzern and then take the train from there to Venice without a stop in Lugano. This ride is about 6.5 hours and there are special fares available that reduce the price a bit.
You might want to read up a bit on these destinations in Switzerland here on the Rick Steve's website, or get his book at the library. There is very good information in there about Luzern and the Berner Oberland, including Lauterbrunnen. There is less info about Lugano as it is not as favored at either of the other two (kind of a big commercial city, although the lakeside setting is nice).