Re: volumes: Beersmith appears to do boil-off as gallons per hour (rather than percentage). If you have it compute boil volume from your desired (fixed) end volume (the default way), then at 90 minutes, you will have the same volume, regardless of whether the wort had already been boiling for 90 minutes. You can confirm this by just changing the boil time and looking at the volumes. If you set up equipment with a 5 gal batch volume and 1 gph boil-off, a 60-minute boil starts with 6.2 gal and a 120-minute boil starts with 7.2 gal. (The 0.2 gal is cooling shrinkage.)
Re: change in IBUs:
It looks like what Beersmith is doing is only using the initial (pre-boil) wort gravity to compute IBUs.
I made a test recipe with 5 gal batch volume and 1 gph boiloff (no losses anywhere else), 70% efficiency, 10# of 2-row pale malt, and 1 oz of 14% CTZ hops added at 60 minutes. With a 60-min boil, that's a preboil volume of 6.2 gal, a preboil gravity of 1.041, and an IBU of 57.5. If I increase the boil time to 120 min (preboil volume 7.2 gal), I get a preboil gravity of 1.035 and an IBU of 60.5. If I then increase the amount of 2-row to get a preboil gravity of 1.041 (so, multiply by 7.2/6.2, which is 11.6 lb), I get back an IBU of 57.5.
So I think that's your answer. Wort gravity factors into the IBU computation, and Beersmith simply uses the batch's pre-boil gravity for computing this, even if the gravity at the time of the addition is different.