The RadToolTipManager creates a tooltip for every target control by design. It looks like you are setting the Text property with an HTML string where you create the buttons in the markup and this would, expectedly, result in many buttons with the same id appearing in the markup. This is because the intended use of the Text property is to set a simple string, not HTML content.
If you wish to have a more complex content in the tooltip you should use the OnAjaxUpdate event and load a user control in the ToolTipManager's update panel. In this way only one button will exist on the page in any given time.
Another option would be to create a RadToolTip for every target control and not use the ToolTipManager. You could also use a single RadToolTip and use the targets' events to show it and hide it.
Yet another possible solution is to define a way to give unique IDs to the buttons you create (for example by using the DateTime.Now.Millisecond property).
Please examine the following demo for the difference in the way rich content is loaded in the ToolTIp and in the ToolTipManager: http://demos.telerik.com/aspnet-ajax/tooltip/examples/loadondemand/defaultcs.aspx
You can also take a look at the following demo showing the more general differences between the two controls: http://demos.telerik.com/aspnet-ajax/tooltip/examples/tooltipversustooltipmanager/defaultcs.aspx
I hope the information above will help you decide which controls better suits your scenario.
the Telerik team