Check out Superior Small Lodging
http://www.superiorsmalllodging.com/. Mostly small privately owned less than 50 rooms. A lot of beach front and across the street motels. You should be able to find rooms in May.
A larger place on St Pete Beach that is really nice is The Don Cesar.
http://www.loewshotels.com/en/Hotels.../Overview.aspx