South Africa took a 20th-minute lead in front of some 30,000 fans at the Orlando Stadium when defender Siyabonga Sangweni headed home a corner unmarked at the back post.
Bulgaria levelled the score through Italian-based striker Valeri Bojinov 11 minutes later.
A defensive lapse cost the home side a third successive win but Parreira, who returned as coach last November, continued to experiment with the side, starting with only locally-based players and bringing on his more established names after the interval.
But Bulgaria proved much stouter opponents than South Africa's last two matches against Jamaica and Thailand and limited the home side to a handful of scoring chances.
South Africa continue their build up to the start of the World Cup on June 11 with a match against Colombia at Johannesburg's Soccer City on Thursday.
Enjoy your first month for just £1 / $1 / €1
*Read 5 free articles per month without a subscription
Try your first month for just £1 / $1 / €1