The Dow Jones industrial average rose 52.90 to 5,659.86 after giving back part of a nearly 75-point jump earlier.
Advancers outnumbered decliners by a 7-to-3 margin the New York Stock Exchange, with 1,651 up, 705 down and 838 unchanged. NYSE volume totaled 348.68 million shares vs. 360.55 million yesterday.
The NYSE index rose 3.03 to 352.67, and the Standard & Poor's 500-stock index rose 6.24 to 655.68.
The Nasdaq composite index rose 13.74 to 1,139.40, and the American Stock Exchange index rose 3.31 to 560.02.
Before the stock market opened, bonds nose-dived and quickly snapped back as traders digested a report saying the nation's unemployment rate plunged to a seven-year low of 5.1 percent in August.
As bond prices fell, the yield on the 30-year Treasury bond - a key determinant of corporate and consumer borrowing costs - crept closer to its year-long high at 7.20 percent. But minutes later, bond prices rebounded and the yield backed down to about 7.11 percent by late afternoon.
The reports today on unemployment and hourly earnings fit expectations that the Fed's policy-makers will act to raise interest rates by their next meeting on Sept. 24, but calmed growing fears that the central bank will pursue a more aggressive course than usual.