At least an hour before you plan to cook make the butter by combining the butter, tomato, jalapeno, onion, salt, pepper, chili powder and lime zest in a medium bowl. Mix well until fully blended. Lay a 12"x12" sheet of wax paper on the counter and spoon the butter in the center of it. Fold the wax paper over the butter and with your hands form it into a log about 6" long. Pull the log towards you squeezing out as much air as possible and evening out the log. Roll the log in the wax paper. Twist the ends in opposite directions until the log is tight and even across. Refrigerate for at least an hour and up to a few days. Let the butter warm at room temp for 10 minutes before using.
Take the roast out of the refrigerator 30-45 minutes before you plan to cook. Prepare the grill or oven to cook indirect at 450°. Make the rub by combining the salt, pepper, garlic, onion, and chili powder in a small bowl. Mix well. Dry the meat with a paper towel and season liberally on all sides with the rub. Use it all. Let rest until you are ready to cook, 15 to 30 minutes. Place the roast directly on the cooking rack for the grill or on a rack in a shallow pan for the oven. Cook for about 30 minutes to an internal temp of 125° for medium rare. Remove from the grill or oven and let rest for a full 10 minutes to finish cooking. Top with slices of the butter before slicing so it will melt onto the meat. Slice the roast thick or thin depending on your preference and serve with additional slices of the butter.