Since i couldn't find any conclusive information on the rumor that splitting the trip from Bucharest to Sofia makes it cheaper i decided to do some empirical research so here goes:
Direct train from Bucharest(from Bucharest Nord) to Sofia costs 140 ROM (35euros) lei and there are few departures per day, 12:55, 23:55 that i am aware of.
Direct bus costs 52 Bulgarian Lev (26 Euros) according to http://www.etapgroup.com/?lang=_en making it a cheaper option.
However if you split the trip:
a ticket from Bucharest to Giurgiu by train is 36 ROM (8.50 euro)
and a ticket from Ruse to Sofia by train is 18.90 Bulgarian LEv (cca 8.50 euro)
Making it 17 euros to Sofia.
Although i took a train i got a qoute for a minibus in Giurgiu (to Bucharest) for 15 lei(3.5 euro)
The bus from Ruse to Sofia costs more then train and is around 24 LEV(12 euros)
So to sum it up, if you take a minibus(fairly frequent) from Bucharest Filaret station to Giurgiu and then train from Ruse to Sofia you will get the cheapest option = 12 euros.
Giurgiu to Ruse note - IMPORTANT
It is possible and quite normal to walk across the Danube bridge. I asked the locals as well as border police and they both said it was legal. Furthermore the pedestrian part is perfectly safe although the height might make some people uneasy.
That being said all in all it is a long walk from Giurgiu to Ruse.
In order to be most effective take the bus to Giurgiu because train station is few kilometers further out and it will save you walking time.
Follow the road to the bridge and ask for bridge to Bulgaria frequently to make sure you are on the track. It is in the same direction as Astra Football stadium.
Once you are on the Bulgarian side, there are local buses that cost 1 lev which can save you about 10 km walking to the train station.
Ruse itself is worth a day visit and makes a pleasant break of the journey. Giurgiu is much smaller but still nice to see.
I was told that there are no minibus option for Sofia on the bus station in Ruse and got offered big more expensive buses, but that info could still be worth checking....