So a race like that on Zwift you are most likely riding most of it at or near your FTP. Very little variability like you would find from a real world race or hard group ride. Like you said it’s just hanging on so there is little on / off effect.
If you wanted to do an Attack style ride on Zwift the best way to do it is rolling around at low zone 2 but picking points of where to go full gas. These should be short burst that are 30 seconds to 4 minutes long. Each of the courses do have some type of little hill that you can attack up. Should be full gas all you have. Or if you are coming to a corner you can attack coming out of the corner for 20 - 30 seconds. Each time you come to a banner do a full out sprint.
When outside you can go for 5 - 6 Strava QOM, this would be great motivation. Try to keep them under 4 minutes in duration. With Attack style intervals you want to be riding at 120% + of your FTP so more of an anaerobic effort. Try to get in a total of 20 - 25 minutes of zone 5/6 time over the course of a 3 hour ride. Space them out over the course of your ride so you have some early, in the middle and late, much like a real group ride or race.