The current rogue strikes me as overpowered, and there are two culprits:
-Rogue Talents
-Ability to Sneak Attack virtually everything.
The current rogue is just as good (arguably better) than the fighter in melee due to the now incredibly reliable sneak attack bonus damage. The rogue then has the additional advantage of being highly skilled, thus making him more useful out of combat. Overall, this makes the rogue just better than the fighter, who has nothing useful to do outside of combat. The rogue either needs to have a reduced reliability with its sneak attack, or reduced staying power. Since the BAB/HD correspondence is, IMO a good idea, the sneak attack is the easiest thing to fix.
Here is my proposal:
Remove the current new sneak attack rule, and replace it with rogue talents, like so (some of the names are bad):
Undead Hunter: You now gain the benefit of your sneak attack damage against corporeal undead foes.
Weedwacker: You now gain the benefit of your sneak attack damage against plants.
Advanced Talents:
Discorporation: You now gain the benefit of your sneak attack against incorporeal foes, but only if wielding a ghost touch weapon or otherwise able to ignore the miss chance from incorpoeality.
Golem Striker: You now gain the benefit of your sneak attack against constructs, but only when wielding a weapon able to bypass the hardness or DR of the target (such as an adamantine weapon, or the benefit of the golembane scarab).
Elemental Bane: You now gain the benefit of your sneak attack against elementals, but only when wielding a weapon that deals energy damage appopriate to the target's subtype: Fire/Cold, Air/Acid, Earth/Electricity, Water/Fire.
Fortification Piercing Strike: You now gain the benefit of your sneak attack against foes wearing armor with the fortification enchantment as if it was one level lower (heavy->medium, medium->low, low->none)
Alternately, change the rule so that it requires 2 ranks in an appropriate knowledge skill to sneak attack foes whose creature type is covered by a different knowledge skill than the rogue's. So a giant rogue could sneak attack all of the knowledge (nature) creatures (humanoids, giants, animals, magical beats, etc.), but would need to have 2 ranks of knowledge (arcana) to know where the weak spots are on a dragon, and 2 ranks in knowledge (religion) to know where the weak points are for undead.
Note I am assuming my rule for humanoids and knowledge local/nature, which is that knowing about humans or elves is knowledge nature, but knowing about specific humans or elves would be knowledge local. Which is a houserule, I am pretty sure.