I think the addressing is confusing, especially when talking over profibus. - Not sure what you mean here.
The fact that you can only monitor one Function Block at a time. - Do you mean open multiple windows as in tiling, you can do that. Got to be honest can't remember if they all update or you have to click on the window.
The endless conversion of data between byte, BCD, Floating point, etc. - ?? you can look at data in whatever format you want, I don't see byte as a format, although BCD and Floating point are.
Making on-line changes to function blocks that are called from from OB1, seems to generate all kinds of timestamp errors that can't be fixed. - Never come across that, I don't place much in the way of code in OB1 though, its usually better to use OB1 as a distribution block, keep the size to a minimum.
The fact that inside a function block if you have a temp tag, you can't search for it. - The TEMP's are scratch flags, they only exist in the block in which they are created and you can search for them in the block very easily. Right click and find next.
Siemens is different from AB, its structured completely differently, both have good/bad points I don't see anything above thats particularly bad except the OB1 thing which I have not come across in 10 years.
On the other hand as someone recently becoming re-aquainted with AB, I find AB very frustrating with certain things.
At the end of the day, once I am used to its quirks and differences I'll find it better.
When there was S5 and PLC5, AB won hands down, S7 and ControlLogix, S7 wins hands down.
Only an opinion.