Japan international Kagawa had done an outstanding job in replacing injured playmaker Mario Gotze since the start of the year and his absence was felt in Dortmund's nervous and scrappy 1-0 win at Hertha Berlin last week that stretched their unbeaten run to 16 league games.
"It is looking good for Shinji and I hope he can be with us on Sunday," captain Sebastian Kehl told reporters. "Our medical team is doing fantastic work."
The 32-year-old Kehl has been out for a total of 36 months with injuries since 2006 but has reclaimed his starting spot and captaincy this season and was rewarded this week with a contract extension to 2013.
"As the longest-serving player at the club now, I am having lots of fun contributing to Dortmund's positive development," Kehl said.
The Ruhr valley club last lost in the league in September and Kagawa's possible return to the squad for Sunday's game would mean a much-needed creative injection in midfield, with the 22-year-old having contributed seven league goals this season.
A win against Hannover, who themselves have gone nine games without defeat, would allow Jurgen Klopp's team to stay at least three points clear of second-placed Borussia Monchengladbach, who are on 46 points, as they chase back-to-back Bundesliga titles.
Rivals Bayern Munich, third on 45, are desperate to get their season quickly back on track against fourth-placed Schalke 04 on Sunday, after having won only two of their five league games this year.
Bayern's 1-0 defeat to Basel in their Champions League last 16 first leg on Wednesday piled on further pressure as they chase a treble.
"We are stuck in a difficult situation and in this phase we had imagined our game to be different. We must turn things around now," Bayern keeper Manuel Neuer said.
Gladbach entertain Hamburg SV on Friday and a win would allow them to draw level on points with Dortmund.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.