If your sprite isn't set up correctly for tk2dCamera, then the scale WILL increase significantly when displayed on there. If you configure the sprite collection to "Use tk2dCamera" then that will be correct.
GetBounds should be correct - it accounts for scale, but not transform.localScale. It is correct in my test case, but if you think its wrong, please send me a repro case for this - I would like to fix it.
width might be slightly meaningless, as your sprite could be rotated and or scaled by the transform, or localScale. Perhaps GetPoint( TopLeft, BottomRight, etc ) returned as coordinates might be better?
If you want world space bounds, you can also use sprite.renderer.bounds.